Ruby on rails CanCan不允许在Spree后端中使用自定义操作/页面
我在Spree中创建了一个新角色,并将CanCan限制为只有一个控制器。但是,它不允许访问自定义操作/页面Ruby on rails CanCan不允许在Spree后端中使用自定义操作/页面,ruby-on-rails,devise,cancan,spree,Ruby On Rails,Devise,Cancan,Spree,我在Spree中创建了一个新角色,并将CanCan限制为只有一个控制器。但是,它不允许访问自定义操作/页面 create, delete, index etc 上述操作是可访问的,但我的“干净”视图不是 控制器- def clean @handbags = Spree::Handbag.is_clean.page(params[:page]).per(50) end 能力修正器- class AbilityDecorator include CanCan::Abilit
create, delete, index etc
上述操作是可访问的,但我的“干净”视图不是
控制器-
def clean
@handbags = Spree::Handbag.is_clean.page(params[:page]).per(50)
end
能力修正器-
class AbilityDecorator
include CanCan::Ability
def initialize(user)
if user.respond_to?(:has_spree_role?) && user.has_spree_role?('technical')
can :manage, Spree::Handbag
end
end
end
Spree::Ability.register_ability(AbilityDecorator)
也试过-
can [:clean, :admin, :index etc..], Spree::Handbag
谢谢您的帮助。我通过覆盖集合动作并添加工作所需的动作来解决这个问题-
def collection_actions
[:index, :clean, :repair, :colour]
end