在编辑屏幕中未选中EntityType中的选定选项

时间:2019-05-21 21:26:33

标签: php symfony4

我已经在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;

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),
            ])