通过以下操作等效于load_and_authorize_resource: - CanCanCan + Rails

时间:2017-05-29 04:50:36

标签: ruby-on-rails cancan nested-resources cancancan

CanCanCan Documentation中,它显示了load_and_authorize_resource的每操作等效项(Controller Authorization Example),以及如何使用load_and_authorize_resource方法处理嵌套资源({ {3}}),但我无法找到load_and_authorize_resource 加载父资源的每操作等价物。

是否有一个等效的行动:

class TasksController < ApplicationController
  load_and_authorize_resource :project
  load_and_authorize_resource :task, :through => :project
end

谢谢!

1 个答案:

答案 0 :(得分:0)

你可能想要

@project = Project.find(params[:project_id])
authorize! :read, @project
@task = @project.tasks.find(params[:id])
authorize! :action, @task