我有很多机构和学校的团体模式。
class Group
has_many :institutions
has_many :schools
end
但是,我需要我的组拥有和属于多个:用户,但我希望通过这样的机构和学校关联的所有用户:
class Group
has_many :institutions
has_many :users, :through => :instiutions
has_many :schools
has_many :users, :through => :schools
end
class School
belongs_to :group
has_many :educations
has_many :users, :through => :educations
end
class Institution
belongs_to :group
has_many :institutional_educations
has_many :users, :through => :institutional_educations
end
显然这不可能,那我该怎么办?
最佳答案
您是否考虑过使用单表继承,使学校成为一种机构?
你的学校班级将继承自机构(“班级学校<机构”)另外,我想你可以称之为其他东西,但你也可以有“类GenericInstitution