Symfony 表单实体类型
有人知道如何以一种简洁明了的方式向实体字段类型添加一些自定义选项吗?e、 gSymfony 表单实体类型,symfony,doctrine-orm,Symfony,Doctrine Orm,有人知道如何以一种简洁明了的方式向实体字段类型添加一些自定义选项吗?e、 g ->add('groups', 'entity', array( 'class' => 'MyBundle:Groups', 'multiple' => 'true', 'query_builder' => function(GroupsRepository $er) {
->add('groups', 'entity', array(
'class' => 'MyBundle:Groups',
'multiple' => 'true',
'query_builder' => function(GroupsRepository $er) {
return $er->createQueryBuilder('g')
->orderBy('g.name', 'ASC');
}))
假设查询生成器返回“Group1”、“Group2”和“Group3”。我想要的是“注入”另一个选项,例如“任意组”
谢谢,StelianEntityType是
ChoiceType
的子项。因此,您可以访问
这涵盖了您只需要一个额外选项的情况。我想知道是否有一种干净的方法可以将实体选项与arraycollection或类似的东西合并。您可以添加EntityType及其父项定义的所有选项。但是如果你想要更多的选项来满足你的特定需求,你必须定义你自己的类型。这个我没有看到,但是:选项“default\u value”不存在,所以它似乎不适合多个:trueIt不是
default\u value
而是empty\u value
。我编辑我的回复。:)不幸的是,当您处于multiple=true场景中时,空的_值不起作用,因此我将只选择一个自定义类型,或者在实体中实际有一个默认的“Any group”条目。谢谢你的帮助,奥利弗。
->add('groups', 'entity', array(
'class' => 'MyBundle:Groups',
'multiple' => 'true',
'query_builder' => function(GroupsRepository $er) {
return $er->createQueryBuilder('g')->orderBy('g.name', 'ASC');
},
'empty_value' => 'Any group',
))