在 symfony2 关系many_to_many添加额外的字段



我正在寻找一种方法来处理symfony2中带有额外字段many_to许多关系,我有3个实体:技能/培训/技能培训。每次培训都应该影响某些技能并增加这些技能的水平。所以技能训练表是这样的(skill_id,training_id,target_level)

在培训形式中,我想列出所有技能和每个技能的目标级别,因此我可以选择一项技能并添加将受此培训影响的目标级别(从 1 到 5 的整数)。我想在培训实体的添加表单中执行此操作。

我使用 Sonata 管理捆绑包来生成我的管理类,我可以轻松地使用复选框呈现技能列表(使用类型集合,以及选项展开 true 、多个 true),但我想知道如何以训练的形式在每个技能前面渲染额外的字段target_level?

如果你帮助我,我会很棒。我正在寻找解决方案3天没有任何进展...谢谢

以下是类似的问题:

原则2:在参考表中使用额外列处理多对多的最佳方法

原则 2 和具有额外字段的多对多链接表

TL;DR:不幸的是,关系不能有任何额外的字段。您需要再创建一个实体,该实体将具有两个关系(与技能和培训实体)和目标级别的属性。

最新更新