Я пытаюсь установить разные уровни контроля доступа (3 уровня в моем приложении) для определенной модели CRUD.В приложении нет модели User, потому что я использую RPAM для аутентификации и сеанса для отслеживания пользователя.Чтобы установить уровни авторизации, я создал модель с именем user_role, чтобы назначить роль для имени пользователя.В БД это выглядит так:
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
Как я могу построить иерархическую структуру роли: для всего, что ограниченоможет сделать, администратор может сделать также, но не иначе.