我有一个俱乐部的模型,我想在那里模拟两个实体的会议和成员。
然而,这些实体之间实际上存在着两种多对多的关系,对于任何会议,成员可以是演讲者,也可以是来宾。现在我是一个OO思考者,所以通常只创建两个类,每个类内部只有两个数组,但是Rails让我觉得这里更以数据为中心,所以我意识到我需要打破这些M2M关系,与我做过的连接表演讲者和来宾建立联系,但是现在我很难描述rela模型中的关系。
这两个连接表模型都有“隶属于:会议”和“隶属于:成员”,我认为这就足够了。
不过,我对会议和会员模式不太确定。
每个人都有“有很多:客人”和“有很多:发言人”,但我不确定我是否还想去:
有许多:成员,:到=>:来宾
有许多:成员,:到=>:演讲者
但我怀疑这就像宣布两个将发生冲突的“成员”。
我还想到:
有多少客人,:到=>:客人
有许多:扬声器,:到=>:扬声器
这有道理吗?ActiveRecord如何知道他们实际上是成员?
我发现了大量的多态M2M关系和M2M关系的例子,其中一个表引用它自己,但没有好的例子来帮助我模拟这种情况,即两个单独的表有两个不同的M2M关系。
有人有什么建议吗?