From 4a5700c07e10b9144629f1ae63e0feb195204472 Mon Sep 17 00:00:00 2001 From: Alberto Bajo Date: Mon, 30 Jul 2012 22:58:17 +0200 Subject: [PATCH] Fixed load_resource "find_by" in mongoid resources Latest versions of Mongoid supports "find_by" query, but syntax is slightly different than Active Record. --- lib/cancan/controller_resource.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/cancan/controller_resource.rb b/lib/cancan/controller_resource.rb index 8ca8a16..40ce445 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