【问题标题】:Best practise to hide related entity in a form在表单中隐藏相关实体的最佳实践
【发布时间】:2014-04-16 10:07:28
【问题描述】:

我有两个实体,分别称为“成员”和“角色”。在我显示“成员”实体的数据的同一页面上,我想添加一个表单,用于向该“成员”添加角色(每个请求一个“角色”)。

添加新的“角色”实体包括相关“成员”的信息。因此,表单必须包含一个“成员”实体,handleRequest($request) 才能正常工作。在表单中隐藏此“成员”实体的最简单方法是什么?

我已经用谷歌搜索了一下,但没有令人满意的结果。我发现了以下方法:

  1. 使用 symfony-generate-crud-default-settings: 和 并用 css 隐藏它们
  2. 使用带有 ID 的隐藏文本字段 成员数据转换器来转换隐藏的文本字段 将数字返回到“成员”实体

选项 1) 看起来更像是一个 hack,而选项 2) 需要大量代码来完成一项简单的任务。是否不可能将整个 Member 实体放入表单组件中,以便handleRequest($request) 可以正确处理相关实体?

【问题讨论】:

    标签: forms symfony entity


    【解决方案1】:

    如果我没听错的话,Member 和 Role 实体具有 ManyToMany 关联。在这种情况下,您应该使用“collection”表单类型。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-08
      • 1970-01-01
      • 2012-09-28
      • 2011-08-18
      • 1970-01-01
      • 2015-11-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多