与属性和验证数据的N到N关系

时间:2015-07-18 13:29:53

标签: forms symfony

我有三个类来表示与属性的n到n关系:

  • 产品类
  • 标记类
  • Product_Tag类

在一个产品的添加和编辑页面上,我想添加或删除标签。 我使用GenemuFormBundle来显示带有select 2包的标签,到目前为止显示还可以。

但是当我尝试保存表单时,出现错误,因为系统会尝试在Product类的“product_tags []”属性中保存标记ID。我知道我应该创建一个新的Product_tag对象,但我不知道如何防止链接保存在表单提交中,也不知道如何在控制器中获取这些数据以手动进行映射。

有人可以告诉我这样做的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

Symfony Cookbook中有一个例子可以帮助你继续前进:Transforming an issue number into an issue entity

基本上你必须创建一个DataTransformer,它会将你的标签转换为字符串表示形式,并在提交表格后反转转换以获得标签实体。

您可能还对另一章感兴趣:Dynamic form modification