Я пытаюсь указать некоторые пользовательские роли в Spree, например, роль «клиент» и расширить разрешения для доступа к разделу администрирования для этой роли.Spree настраивать/расширять роли и разрешения пользователей
Этот пользователь сможет получить доступ к только тем Продуктам, созданным этим пользователем. Концепция позволяет пользователю с ролью «клиент» управлять только продуктами и другими определенными Моделями.
Для начала я добавил канкан плагин и определил RoleAbility класс в role_ability.rb
Только после этого поста: Spree Custom Roles Permissions
class RoleAbility
include CanCan::Ability
def initialize(user)
user ||= User.new
if user.has_role? 'admin'
can :manage, :all
elsif user.has_role? 'client_admin'
can :read, Product
can :admin, Product
end
end
end
Добавлено это инициализаторе: конфиг/Инициализаторы/spree.rb
Ability.register_ability(RetailerAbility)
Также расширенный admin_products_controller_decorator.rb: приложение/controllersadmin_products_controller_decorator.rb
Admin::ProductsController.class_eval do
def authorize_admin
authorize! :admin, Product
authorize! params[:action].to_sym, Product
end
end
Но я получаю флэш-сообщение «Ошибка авторизации»
Пытаясь найти счастье, я упомянул следующие ссылки
GitHub сутью для настройки Шпрее Роли: https://gist.github.com/1277326
Вот аналогичный вопрос, с которым я сталкиваюсь: http://groups.google.com/group/spree-user/browse_thread/thread/1e819e10410d03c5/23b269e09c7ed47e
Все усилия напрасно ...
Какие-либо указатели получили высокую оценку?
Заранее спасибо.
Использование spree 1.1.1, spree_multi_domain – swapab