:id_param option to load_resource allows specification of the param name to find members

This commit is contained in:
Geoff Parsons
2011-07-20 13:42:24 -04:00
parent 600a3e16a5
commit 7937a282a3
2 changed files with 15 additions and 3 deletions
+6 -2
View File
@@ -121,11 +121,15 @@ module CanCan
end
def id_param
@params[parent? ? :"#{name}_id" : :id]
if @options[:id_param]
@params[@options[:id_param]]
else
@params[parent? ? :"#{name}_id" : :id]
end
end
def member_action?
new_actions.include?(@params[:action].to_sym) || @options[:singleton] || (@params[:id] && !collection_actions.include?(@params[:action].to_sym))
new_actions.include?(@params[:action].to_sym) || @options[:singleton] || ( (@params[:id] || @params[@options[:id_param]]) && !collection_actions.include?(@params[:action].to_sym))
end
# Returns the class used for this resource. This can be overriden by the :class option.