【发布时间】:2014-12-18 21:58:18
【问题描述】:
我有一个模型 person 和一个模型 group。有两种人:领导带队和参与者参与。我需要领导者和团体之间的 hbtm 关系以及参与者和团体之间的 has_many-relationship。是否可以通过在模型中提供某种条件(是领导者/是参与者)来使用相同的模型 person 来做到这一点?
class Person < ActiveRecord::Base
has_and_belongs_to_many :groups
has_many :participations
has_many :groups, :through => :participations
...
end
我想用一个模型来做到这一点,person,因为用户要么是领导者,要么是参与者,但每个用户都应该是一个人,即User belongs_to :person。
【问题讨论】:
-
当一个领导有很多组时,我可以理解。但是确定一个团队有很多领导者吗?
-
是的,我的小组可以有很多领导。想想组织一个小组的领导团队。
标签: ruby-on-rails has-many-through has-and-belongs-to-many