我已经在Symfony 4.2 Web应用程序中基于EntityType创建了一个表单字段。
但是在编辑条目时遇到一些问题。在EntityType生成的下拉列表中未选择GUID(我使用的是常规ID而不是常规ID)。
->add('fuel1', EntityType::class, [
'class' => Chemical::class,
'choice_label' => 'name',
'required' => false,
])
<option value="0e21313d-847e-4b8f-ab04-1cde3d0281e7">Chemical #1</option>
我希望选择该选项。该值在数据库中是正确的,但似乎数据不是通过EntityType传递的。
**已编辑,添加了更多代码****
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $fuel_1;
答案 0 :(得分:0)
在选项中添加'preferred_choices',将其设置为实体ID值(如果已设置)
->add('fuel1', EntityType::class, [
'class' => Chemical::class,
'choice_label' => 'name',
'required' => false,
'preferred_choices' =>array($builder->getData()->getChemical()->getId() ?? null),
])