在 Doctrine 中创建多对多关系的最佳实践。
Posted
技术标签:
【中文标题】在 Doctrine 中创建多对多关系的最佳实践。【英文标题】:Best practice in creating a many-to-many relationship in Doctrine. 【发布时间】:2016-06-10 01:38:18 【问题描述】:我正在实现一个包含两个实体的系统:产品和类别。我想在这两个实体之间创建多对多关系,但我不想使用 Doctrine 中的多对多选项。我希望能够自己创建中间表(产品类别),以便以后我也可以访问该表。我应该如何定义这三个表之间的关系? (考虑到我的项目中产品和类别之间的关系是多对多的)。非常感谢带有教义 ORM 注释的简单演示示例,所以我没有弄错。非常感谢。最佳做法是什么?
【问题讨论】:
看这个问题***.com/questions/15616157/… 这将是一对多任何多对一关系的简单组合。 【参考方案1】:您可以添加一个名为“ProductCategory”的中间实体。然后在“Product”和“ProductCategory”之间创建一对多关系,在“Category”和“ProductCategory”之间创建另一个一对多关系。
此解决方案甚至允许您向“ProductCategory”表添加一些额外的字段。
Product [1]------>[n] ProductCategory [n]<-------[1] Category
【讨论】:
以上是关于在 Doctrine 中创建多对多关系的最佳实践。的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 schema.graphql 在放大数据存储中创建多对多关系
使用嵌套字段在MongoDB / Mongoose中创建多对多关系?