我在我的restful资源中添加了新操作,如何使用cancan对其进行授权。
页面控制器:
load_and_authorize_resource
def index
end
def show
end
def new
end
def create
end
def edit
end
def update
end
def destroy
end
def mynewaction
end
能力模型:
class Ability
include CanCan::Ability
def initialize(user)
user ||= User.new
can :create, Page
can :mynewmethod, Page #does it work?
end
答案 0 :(得分:4)
是的我相信它适用于CRUD方法以外的其他方法,虽然这只是查看一些文档,但请查看here和actual documentation by ryanb here。
你应该特别注意第一个链接,它说load_and_authorize_resource
将适用于控制器中的所有方法,甚至是普通CRUD之外的方法。
我认为最简单的方法就是测试一下,当你启动时它是否正确授权?没有比尝试更好的了。