【发布时间】:2014-02-17 11:39:24
【问题描述】:
我正在努力寻找关联三个模型的最简单解决方案:
- 用户
- 组织结构
- 角色
用户和组织是一种 HABTM 关联 - 一个用户可以拥有多个组织,反之亦然。
一个用户也可以有多个角色,但每个组织只能有一个角色。
现在我的模型中有这个:
user.rb
class User < ActiveRecord::Base
has_many :roles, through: :organizations
has_and_belongs_to_many :organizations, :join_table => :organizations_users
end
organization.rb
class Organization < ActiveRecord::Base
has_and_belongs_to_many :users, :join_table => :organizations_users
has_many :roles
end
role.rb
class Role < ActiveRecord::Base
has_many :users, through: :organizations
belongs_to :organizations
end
这有意义吗?
【问题讨论】:
标签: ruby-on-rails associations