【发布时间】:2016-08-24 07:04:24
【问题描述】:
这可能是很多人都会遇到的问题,但我目前还没有找到真正令人满意的答案,也许没有完美的解决方案。
我有很多实体,比如:红色、绿色、蓝色、黄色等... 所有这些实体都没有任何共同点,但假设我想让几个实体“用户”负责这些实体,并且我想在我的数据模型中实现这种关系。
因此,最自然的解决方案是创建一对多对多关系,例如: RedToUser(带有外键 user_id 和 red_id)、YellowToUser(带有外键 user_id 和 yellow_id)等等。
虽然这是一个非常明确的解决方案,但它并不能真正令人信服,因为我有很多“颜色”,而且除了我的外键“color_id”之外,与用户的关系看起来总是一样的。感觉就像一遍又一遍地重复自己。
是否有最佳实践解决方案来设计这样的东西?
【问题讨论】:
标签: database-design doctrine-orm