gpt4 book ai didi

symfony - sonata_type_collection 表单类型的自定义查询或特定 getter 方法

转载 作者:行者123 更新时间:2023-12-02 14:55:28 26 4
gpt4 key购买 nike

我有一个 Trip 实体,其中有许多 HoneymoonComponent。在 TripAdmin 中,我使用 sonata_type_collection 来编辑内联所有 HoneymoonComponent 相关内容:

$formMapper
->add('isHoneymoonEnabled', null)
->add('honeymoonComponents', 'sonata_type_collection', array('by_reference' => false), array(
'edit' => 'inline',
'inline' => 'table',

));

这可以正常工作,但我想要实现的目标是仅显示符合条件的 honeymoonComponent(例如:HoneymoonComponent::enabled = false)。

我找不到为此指定自定义查询的方法,并且我有一个解决方法,我不知道它是否好,即覆盖 HoneymoonComponent::getHoneymoonComponent 以仅返回符合条件的查询。 .但我不太喜欢它。

有没有办法指定sonata_type_collection应该使用哪种“getter”方法? (或指定自定义查询)。这两种解决方案对我来说都很好。

提前致谢!

最佳答案

你可以试试这个:

$formMapper
->add('isHoneymoonEnabled', null)
->add('honeymoonComponents', null, array(
'by_reference' => false,
'class' => 'My\Bundle\Entity\MyEntity',
'query_builder' => $this->modelManager->createQuery('My\Bundle\Entity\MyEntity', 'h')
->where('h.enabled = 0'),
), array(
'edit' => 'inline',
'inline' => 'table',
));

关于symfony - sonata_type_collection 表单类型的自定义查询或特定 getter 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23673130/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com