2015-07-10 65 views
0

我正在创建一个只包含后端的扩展扩展模块,当我想访问常规设置(/ admin/general_settings/edit)时,我使用不同的角色系统重写Ability类)我被重定向到/未经授权的页面。我做错了什么?spree编辑常规设置cancan的未授权页面

我有这样的能力类:

can :manage, Config # to be able to show the configuration link 
can :manage, Store, id: user.store_id # to be able to show the general settings link 
can :manage, Preference 

回答

0

由于没有申报,你需要给在进入编辑和更新方法如下能力接入的常规设置任何模型

can :manage, Spree::Admin::GeneralSettingsController 

此外,添加一个狂欢::您的型号名称在你的能力文件 你考虑行应该是这样的

can :manage, Spree::Store, id: user.store_id # to be able to show the general settings link 
can :manage, Spree::Preference 
+0

可以:管理,Spree :: Admin :: GeneralSettingsController没有工作,但可以:管理,:general_settings修复它。我通过在authorize_admin方法中分析得到了这个想法,我认为这不是最干净的方法,但我尝试了许多其他选项,但没有办法。 – Moh