【发布时间】:2013-06-24 13:44:43
【问题描述】:
我已将实体字段类型添加到我正在使用的表单中,但是当我尝试设置 preferred_choices 时,我收到以下错误消息
警告:spl_object_hash() 期望参数 1 是对象,字符串在 /srv/www/amber/public_html/Symfony/vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/Type/DoctrineType.php 中给出第 98 行
你可以看到下面的代码
$builder->add('candStatus', 'entity', array(
'label' => 'Candidate Status',
'class' => 'AmberAtsBundle:SelCandStatus',
'query_builder' => function(EntityRepository $er) {
return $er->createQueryBuilder('sc')
->orderBy('sc.rank', 'ASC');
},
'property' => 'candStatus',
'preferred_choices' => array('1'),
));
我对 Symfony 还很陌生,所以任何帮助都将不胜感激
【问题讨论】:
-
很确定这是与实体有关的问题..如果可能的话,实体的邮政编码..
-
我环顾四周,在以下 2 个问题中找到了答案:stackoverflow.com/questions/15776867/…stackoverflow.com/questions/5425819/… 我已经从 formType 中删除了 preferred_choices,而是在控制器在对象用于创建表单之前预先填充对象。我会在几个小时内回答时发布更多详细信息
-
您可以使用实体管理器的 getReference 方法来构造一个适用于实体表单字段上的“preferred_choices”的数组。见this question
标签: symfony