我的Group
模型有has_and_belongs_to_many :activities
。
对于每个Group
,相关的Activity
需要按position
字段进行排序/排名。我认为我不能在position
模型中添加名为Activity
的字段/列,因为Group
可以包含多个Activities
,而Activity
可以包含Groups
多个{{1}}。
关于如何建模的任何想法?
我正在使用Mongoid 3,但我认为解决方案与ActiveRecord类似。
谢谢!
答案 0 :(得分:0)
我会在连接表中放置一个固有的属性。为此,您需要将habtm
转换为has_many :through
。
以下是一个SO answer,详细说明如何在Mongoid中实现has_many :through
,因为默认情况下不支持。
因此,在这种情况下,联接表activity_groups
可以有一个名为position
的列。