【发布时间】:2016-01-16 15:18:15
【问题描述】:
当一个实体不与许多其他实体同时关联时,我还应该使用多对多关联吗?
例如,我理解作者与书籍的关系是多对多的,一个作者可以写很多本书,一本书可以由多个作者写。这一直有效。
考虑这种情况。 A Batch 在某个特定时间有许多学生。如果一个学生不及格,他应该转到下一个初级班。换句话说,一个学生不能同时属于多个批次。在这种情况下,这是多对多关联吗?
我认为的替代解决方案:
我正在考虑在学生表中放置两列。 initial_batch 和 current_batch。我可以通过检查当前批次和初始批次之间的差距来获取学生的批次历史记录,因为 学生必须降到下一个立即批次。此外,batch.students 与 rails 中的 has_many 关联存在。所以,我认为这没什么大不了的。
所谓批次,是指同一年被录取的一批学生。
【问题讨论】:
标签: ruby-on-rails entity-framework database-design many-to-many