【发布时间】:2014-12-05 17:34:32
【问题描述】:
我想实现一个通用表,例如 info,其中包含 type 列和 foreign_id 列。 foreign_id 是不同表的外键,具体取决于 type。
使用Doctrine ORM,我的理解是需要提前指定映射关系。但是,由于 foreign_id 可以根据 type 链接到不同的表。你如何使用 ORM 实现这种关系?
目前,我通过创建多个表来解决这个问题,比如 info_a、info_b、a_id 和 b_id时间>。如果类型的数量增加,它将导致许多表具有基本相似的结构。
您如何使用 ORM 解决此问题?提前致谢。
【问题讨论】:
-
将外键映射到多个表是数据库设计中的反模式。见here。
标签: database-design orm doctrine-orm