我正在我的 Rails 3 应用程序中实现身份验证+授权系统。我与用户和角色之间存在 HABTM 关系。
我将拥有的角色是:经理、经销商、操作员、管理员
现在一个经理可以有很多经销商在他手下。我如何模拟这种关系?
这是一个简单的问题,但我找不到答案。这里还有一个类似的问题:角色相关的关联,但它并没有正确地清除事物。
编辑:
我认为我的要求更简单。对我来说,用户只能是管理员、操作员、经销商或经理。
为此,我可以简单地将角色列添加到用户表。现在将如何执行经理和经销商之间的关系?
我正在我的 Rails 3 应用程序中实现身份验证+授权系统。我与用户和角色之间存在 HABTM 关系。
我将拥有的角色是:经理、经销商、操作员、管理员
现在一个经理可以有很多经销商在他手下。我如何模拟这种关系?
这是一个简单的问题,但我找不到答案。这里还有一个类似的问题:角色相关的关联,但它并没有正确地清除事物。
我认为我的要求更简单。对我来说,用户只能是管理员、操作员、经销商或经理。
为此,我可以简单地将角色列添加到用户表。现在将如何执行经理和经销商之间的关系?
我想你正在寻找更像
class Organization < ActiveRecord::Base
has_many :users
has_many :managers
has_many :dealer
has_many :admins
has_many :operators
has_many :dealer_users, :through => :managers, :class_name=>"User"
end
class Admin < ActiveRecord::Base
has_many :organizations
belongs_to :user
end
class Dealer
has_many :organizations
belongs_to :user
end
class Operator < ActiveRecord::Base
has_many :organizations
belongs_to :user
end
class Manager < ActiveRecord::Base
has_many :dealers
belongs_to :organization
end
class User < ActiveRecord::Base
has_many :organizations
has_many :admins
has_many :operators
has_many :managers
has_many :dealers
end