aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/dynamic_matchers.rb
diff options
context:
space:
mode:
authorRafael Mendonça França <rafaelmfranca@gmail.com>2015-09-09 05:50:42 -0300
committerRafael Mendonça França <rafaelmfranca@gmail.com>2015-09-09 05:50:42 -0300
commitd5ba9a42a6e93b163a49f99d739aa56820e044d0 (patch)
treebb70a8bc3405c711fb18458b48937a5c93d4dcbd /activerecord/lib/active_record/dynamic_matchers.rb
parent30c503395bf6bf7db1ec0295bd661ce644628db5 (diff)
parentad389286bbce5a43de34dc2df3968fa1f47181e1 (diff)
downloadrails-d5ba9a42a6e93b163a49f99d739aa56820e044d0.tar.gz
rails-d5ba9a42a6e93b163a49f99d739aa56820e044d0.tar.bz2
rails-d5ba9a42a6e93b163a49f99d739aa56820e044d0.zip
Merge pull request #20080 from robertjlooby/fix_overwriting_by_dynamic_finders
put dynamic matchers on GeneratedAssociationMethods instead of model
Diffstat (limited to 'activerecord/lib/active_record/dynamic_matchers.rb')
-rw-r--r--activerecord/lib/active_record/dynamic_matchers.rb6
1 files changed, 3 insertions, 3 deletions
diff --git a/activerecord/lib/active_record/dynamic_matchers.rb b/activerecord/lib/active_record/dynamic_matchers.rb
index b6dd6814db..78fac1f3bb 100644
--- a/activerecord/lib/active_record/dynamic_matchers.rb
+++ b/activerecord/lib/active_record/dynamic_matchers.rb
@@ -16,7 +16,7 @@ module ActiveRecord
if match && match.valid?
match.define
- send(name, *arguments, &block)
+ generated_association_methods.send(name, *arguments, &block)
else
super
end
@@ -60,7 +60,7 @@ module ActiveRecord
end
def define
- model.class_eval <<-CODE, __FILE__, __LINE__ + 1
+ model.generated_association_methods.class_eval <<-CODE, __FILE__, __LINE__ + 1
def self.#{name}(#{signature})
#{body}
end
@@ -70,7 +70,7 @@ module ActiveRecord
private
def body
- "#{finder}(#{attributes_hash})"
+ "#{model}.#{finder}(#{attributes_hash})"
end
# The parameters in the signature may have reserved Ruby words, in order