Rails 3.1质量分配层次结构

时间:2012-02-22 16:48:15

标签: ruby-on-rails ruby-on-rails-3.1 mass-assignment

我正在尝试为CRUD某些模型设置不同的访问控制级别(我的应用程序中有3个级别)。应用程序中没有用户模型,因为我使用RPAM进行身份验证和会话以跟踪用户。为了设置授权级别,我创建了一个名为user_role的模型,为用户名分配角色。在DB中,它看起来像这样:

 id | username |  role   
----+----------+---------
  1 | user1    | limited
  2 | admin    | admin
  3 | user2    | normal

我的模型定义如下:

class Treatment < ActiveRecord::Base
    has_many :user_roles
    attr_accessible :cust_id, :admission_time, :as=>:admin
    attr_accessible :customer_type, :as=>:limited
end

我如何构建角色的层次结构:对于所有有限的东西,管理员也可以这样做,但不是相反。

1 个答案:

答案 0 :(得分:1)

只做

attr_accessible :customer_type, :as=>[:admin, :limited]

它将覆盖两个角色。