Forms Symfony2表格,多对多通过

Forms Symfony2表格,多对多通过,forms,symfony,doctrine,Forms,Symfony,Doctrine,我正在做一个具有优秀symfony2框架的项目,我遇到了一些问题 我必须实施这些实体: User System Partner 用户实体是一种客户,在登记表中,它应该能够选择自己的合作伙伴,但每种类型的系统只能选择一个。例如,一个合作伙伴用于Windows系统,一个用于DOS,一个用于Mac OSX 因此,表单应该有一些标准字段,如email、password和(对我来说,下面的内容非常重要)3个下拉列表,以及可用合作伙伴列表(每个系统一个下拉列表) 在本文中,我发现如果我想实现这种关联,我必

我正在做一个具有优秀symfony2框架的项目,我遇到了一些问题

我必须实施这些实体:

User
System
Partner
用户实体是一种客户,在登记表中,它应该能够选择自己的合作伙伴,但每种类型的系统只能选择一个。例如,一个合作伙伴用于Windows系统,一个用于DOS,一个用于Mac OSX

因此,表单应该有一些标准字段,如email、password和(对我来说,下面的内容非常重要)3个下拉列表,以及可用合作伙伴列表(每个系统一个下拉列表)

在本文中,我发现如果我想实现这种关联,我必须为我的应用程序中的用户和合作伙伴之间的其他字段创建第三个实体,这可以工作,但不完全符合我的系统限制

我认为这种关系应该是这样的:

User one-to-many System
Partner one-to-many System

问题是如何制作这3个下拉列表,每个系统一个,采用symfony和条令的方式?

Mmmmh我认为您更需要
用户一对多系统多对一合作伙伴
。您需要第三个表
userpartnerration
做什么?您是对的。。。谢谢,但是如果我想节省用户与合作伙伴链接的时间呢?那么您可以在中间表(此处为
System
)中添加一列
created
(键入的日期时间)部分,并在此实体构造函数中将其设置为
now
。如果我能很好地理解你的问题…:)Hmmm使用当前的关系方法,我有一个实体系统,它有4列:id、名称、用户id、合作伙伴id。问题是如何防止每个链接用户-合作伙伴的系统名称重复?这就是为什么我有第三个实体UserPartnerRelation与列:id、user\u id、partner\u id和system\u id