CancanCan检查提交的参数
Cancancan check submitted parameter
如何获取 cancancan 检查参数以查看用户是否可以更新?
控制器获取:
Parameters: {"offer"=>{"revoked"=>"1", "user_id"=>"14"}, "id"=>"53"}
ability.rb:
can :update, Controller, :user_id => user.id
cannot :update, Controller, { :revoked => nil }
控制器代码:
@offer.update(params)
这给我一个 Cancancan 错误,提示用户未获得授权。我想我需要指定 :revoked 在报价哈希中,但我无法找出正确的代码。
如何更改能力 class 可以访问的内容:
https://github.com/ryanb/cancan/wiki/Accessing-Request-Data
或者如何将参数传递到 Ability class 更具体地用于您的目的:
# CanCan - pass params in to Ability
# https://github.com/ryanb/cancan/issues/133
def current_ability
@current_ability ||= Ability.new(current_user, params)
end
那么就是访问params的相关部分,检查是否通过了。
如何获取 cancancan 检查参数以查看用户是否可以更新?
控制器获取:
Parameters: {"offer"=>{"revoked"=>"1", "user_id"=>"14"}, "id"=>"53"}
ability.rb:
can :update, Controller, :user_id => user.id
cannot :update, Controller, { :revoked => nil }
控制器代码:
@offer.update(params)
这给我一个 Cancancan 错误,提示用户未获得授权。我想我需要指定 :revoked 在报价哈希中,但我无法找出正确的代码。
如何更改能力 class 可以访问的内容:
https://github.com/ryanb/cancan/wiki/Accessing-Request-Data
或者如何将参数传递到 Ability class 更具体地用于您的目的:
# CanCan - pass params in to Ability # https://github.com/ryanb/cancan/issues/133 def current_ability @current_ability ||= Ability.new(current_user, params) end
那么就是访问params的相关部分,检查是否通过了。