狂欢 - 我能够在管理面板中看到我的标签,但授权失败消息闪烁

时间:2014-03-31 23:29:15

标签: ruby-on-rails ruby authorization cancan spree

我正在为Spree创建扩展程序。它允许多个商店,所以我在管理区域添加了一个面板。

我还创建了一个新角色:store 我创建了一个AbilityDecorator,如下所示

module Spree
  class AbilityDecorator
    include CanCan::Ability

    def initialize(user)

      if user.respond_to?(:has_spree_role?) && user.has_spree_role?('store')        
        can :admin, Store
      end
    end

  end
  Ability.register_ability(AbilityDecorator)
end

问题是我可以访问使用商店用户登录的管理区域。它仅显示“商店”选项卡。但是我被重定向到/ admin / authorization_failed并且错误消失了。

有什么想法吗?

更新

我需要将以下行添加到我的装饰器中:

can [:admin, :index, :show], Order

因为/ admin被路由到orders_controller #index

0 个答案:

没有答案
相关问题