我是Symfony2的新手,我正在使用表单生成器尝试从数据库创建一个下拉菜单。我可以毫无问题地填充下拉列表,但每个选项值属性只需要设置为选项文本或没有值属性时设置为数字,但我在文档中找不到有关设置值的任何内容。
$builder->add('institution', 'entity', array(
enter code here 'class' => 'JacksonFramesStoreBundle:Institution',
'query_builder' => function(EntityRepository $er) {
return $er->createQueryBuilder('i')
->where('i.type = :type')
->setParameter('type', 'University');
},
'empty_value' => 'Select:',
'empty_data' => null,
));
输出:
<select id="selectUniversity" name="selectUniversity">
<option value="0"></option>
<option value="1">Australian Catholic University</option>
<option value="2">Australian National University</option>
<option value="3">Bond University</option>
</select>
编辑 - 这是树枝的相关部分
<!-- University Panel -->
<div id="uniPanel" style="display:none;">
<p>{{ form_label(form.institution) }}<br />
<span class="inputLine">
{{ form_errors(form.institution) }}
{{ form_widget(form.institution) }}
</span>
</p>
</div>
答案 0 :(得分:0)
在控制器中,在if ($form->isValid())
之后,尝试使用:
$value = ($entity->getInstitution()) ? $entity->getInstitution()->getId() : null);
我真的不知道我是否真的理解你的问题