在Symfony2我有BandType,我添加了实体标签:
->add('tags','entity',[ 'label' => 'Tags','class' => 'DbBundle:Tag','property' => 'title','multiple' => true,])
这会生成多个select元素,我可以从数据库(Doctrine)中选择现有的标签.但是我需要添加新的标签dynamicicaly,这不存在.
在客户端,我使用jQuery插件Selectize.js,它允许我添加新的标签到选择框.但提交表单后,新标签不会保存.
所以我的问题是 – 从选择框(实体字段类型)持续新项目的最清晰的方法是什么?
为您的实体使用
Data Transformer.而在reverseTransform方法中,如果没有找到新添加的带,只需在其中创建它,而不是抛出一个TransformationFailedException.