我是symfony的新手。尝试使用它创建添加和编辑表单。当我尝试添加一个选择框,其中从数据库中填充选择数据,但是选择框仅显示id作为选项列表的值和名称
$form = $this->createFormBuilder($defaultData)
->add('category_id', ChoiceType::class, array(
'label' => 'Category',
'choices' => array(
$category)))
这是我的控制器部分
<label for="exampleInputEmail1"> Category</label>
{{ form_widget(form.category_id, {'attr' : { 'class':'form-control'}}) }}
</div>
我的输出是
<option value="id">id</option>
请帮我显示姓名
<option value="id">Name</option>
答案 0 :(得分:0)
仅仅因为数据是从db填充的。然后,而不是ChoiceType :: class更改为EntityType :: class
$form = $this->createFormBuilder($defaultData)
->add('category_id', EntityType::class, array(
'label' => 'Category',
'choices' => array(
$category)))
查看官方文档EntityType Field