Symfony 2.3 EntityType添加默认选项值

时间:2015-11-20 12:57:25

标签: forms symfony

我尝试在Symfony 2.3表单构建器中的实体字段中添加默认选项:

->add('destinataire','directory', array(
                                            'required' => true, 
                                            'class'=> 'MLCUserBundle:Departement',
                                            'multiple' => false,
                                            'query_builder' => function (EntityRepository $er) use ($options) {
                                                $data = $er->createQueryBuilder('d')
                                                          ->where('d.id IN (:liste)')
                                                          ->setParameter('liste',$options['listeId'])
                                                          ->orderBy('d.name', 'ASC')
                                                        ;
                                                return $data;
                                            },
                                            'empty_data'  => $all,
                                            'choices' => $all,
                                            )
           )

没有成功我需要一些帮助!全部!

1 个答案:

答案 0 :(得分:0)

我完全解决了我的问题,我可以使用选择选项:

$builder->add('users', 'entity', array(
'class' => 'AcmeHelloBundle:User',
'choices' => $group->getUsers(),

在Symfony文档中:EntityType form field

在我的控制中,我在数组中添加了我的选项

$myOption = new option('foo');
$allOptions[] = $myOption;

但是我的对象没有id我改变了我的getId()在这种情况下返回-1(id === null)

但我有这个错误:

  

ContextErrorException:注意:未定义索引:id in   /home/mlc/www/mlcSymf/vendor/doctrine/orm/lib/Doctrine/ORM/AbstractQuery.php   第286行