diff --git a/lib/cancan/controller_resource.rb b/lib/cancan/controller_resource.rb index 20def9d..670b30c 100644 --- a/lib/cancan/controller_resource.rb +++ b/lib/cancan/controller_resource.rb @@ -107,6 +107,8 @@ module CanCan if @options[:find_by] if resource_base.respond_to? "find_by_#{@options[:find_by]}!" resource_base.send("find_by_#{@options[:find_by]}!", id_param) + elsif resource_base.respond_to? "find_by" + resource_base.send("find_by", { @options[:find_by].to_sym => id_param }) else resource_base.send(@options[:find_by], id_param) end