如何更改Symfony2中实体类型的ID



在我的一种形式类型中,我正在为给定实体生成一个选择小部件( Symfony 2.4 Propel 1.7 ),我想更改slug列的值(对于选择的小部件选项)而不是主要键,这是基本的自动插入。我想避免使用选择类型并手工填充数据( 必须创建相应的数据变压器以获取实体)。实现这一目标的最佳方法是什么?

我想要:

<!-- type1 is the slug column of the entity -->
<option value="type1">Type 1</option> 

而不是:

<option value="1">Type 1</option>

如果您查看enityType,您会注意到它扩展了学说。在DoctrineType中,您会看到一个设置选择的setDefaultOptions方法。基本上,您需要扩展EntityType并覆盖最初由DoctrineType提供的SetDefaultOptions方法。

老实说,我认为只使用选择字段 DataTransformer会更容易。

相关内容

最新更新