您会针对以下问题推荐哪种方法:我的应用需要拥有一个帐户,其中有多个用户在同一帐户上输入任务。只有一个用户(打开帐户的用户)将拥有管理员权限。
我正在考虑使用Authlogic进行身份验证,而CanCan则用于确定用户权限。关键是我希望打开帐户的用户默认为管理员,他是唯一能够为其帐户生成其他用户的用户,具有不同的权限。
答案 0 :(得分:1)
为什么不将用户模型分为帐户和个人资料? “帐户”将包含每个用户的用户名和密码,“个人资料”将保留一个列表(通过联合表或:通过表格)来跟踪管理员和编辑者?
class Account < ActiveRecord::Base
has_many :roles
has_many :profiles, :through => :roles
end
class Profile < ActiveRecord::Base
has_many :roles
has_many :accounts, :through => :roles
end
class Role < ActiveRecord::Base
belongs_to :account
belongs_to :profile
attr_accessible :is_admin, :account_id, :profile_id
end