aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2013-10-08 16:13:19 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2013-10-08 16:25:44 -0700
commit8c0ba7b69b0952e1f71425ad19e97de8f4dc1be8 (patch)
treefb1bec43bf89794677091f2a4524e4312858599e
parentd6ce327502b4449110ecc9939c201e44ae64756d (diff)
downloadrails-8c0ba7b69b0952e1f71425ad19e97de8f4dc1be8.tar.gz
rails-8c0ba7b69b0952e1f71425ad19e97de8f4dc1be8.tar.bz2
rails-8c0ba7b69b0952e1f71425ad19e97de8f4dc1be8.zip
join parts in `build` are *always* new, so don't bother checking
-rw-r--r--activerecord/lib/active_record/associations/join_dependency.rb3
1 files changed, 2 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/associations/join_dependency.rb b/activerecord/lib/active_record/associations/join_dependency.rb
index dace5503e5..f12d5c49b5 100644
--- a/activerecord/lib/active_record/associations/join_dependency.rb
+++ b/activerecord/lib/active_record/associations/join_dependency.rb
@@ -182,7 +182,8 @@ module ActiveRecord
def build(associations, parent, join_type)
associations.each do |name, right|
reflection = find_reflection parent.base_klass, name
- join_association = find_or_build_scalar reflection, parent, join_type
+ join_association = build_join_association reflection, parent, join_type
+ @join_parts << join_association
build right, join_association, join_type
end
end