【发布时间】:2017-05-19 11:06:34
【问题描述】:
我的数据库图对应:
每个表都有自己的 Symfony 实体类。我的应用视图显示:
我需要将折扣实体与多个实体相关联:运动鞋、T 恤、裤子甚至更多实体。
第一个解决方案:
在折扣和其他之间创建 N:N 表。问题是我可能需要创建新表来应用折扣,然后我必须创建更多 N:N 表。所以我放弃了这个解决方案。
第二种解决方案:
使用to_entity 和to_entity_id 字段创建一个generic 表,让我将折扣映射到to_entity 实体目标(运动鞋、T 恤、裤子或其他):
如何在 Symfony 中实现第二个解决方案?还是有其他可能的解决方案?
谢谢。
【问题讨论】:
-
对于您的第二个解决方案,您可能想看看学说继承。 docs.doctrine-project.org/projects/doctrine-orm/en/latest/… 基本上使用像
Article这样的超类,它由您的不同类型扩展,并定义您的折扣需要与超类的任何关系。
标签: php symfony doctrine-orm doctrine