diff options
author | Ben Woosley <ben.woosley@gmail.com> | 2013-05-10 17:41:29 +0200 |
---|---|---|
committer | Ben Woosley <ben.woosley@gmail.com> | 2013-05-10 17:46:04 +0200 |
commit | fba18f19948f084023fd8744025f57da00163265 (patch) | |
tree | 012dcd72d7ab18c92530b203be24b033a73efe19 /activerecord/lib/active_record/relation | |
parent | 35c198ca9bc1ec530fc29b686978511f23cee076 (diff) | |
download | rails-fba18f19948f084023fd8744025f57da00163265.tar.gz rails-fba18f19948f084023fd8744025f57da00163265.tar.bz2 rails-fba18f19948f084023fd8744025f57da00163265.zip |
Extract JoinDependency#join_relation to DRY the repeated application of the #join_associations.
Diffstat (limited to 'activerecord/lib/active_record/relation')
-rw-r--r-- | activerecord/lib/active_record/relation/finder_methods.rb | 5 | ||||
-rw-r--r-- | activerecord/lib/active_record/relation/merger.rb | 4 |
2 files changed, 2 insertions, 7 deletions
diff --git a/activerecord/lib/active_record/relation/finder_methods.rb b/activerecord/lib/active_record/relation/finder_methods.rb index 332548ea3e..ba222aac93 100644 --- a/activerecord/lib/active_record/relation/finder_methods.rb +++ b/activerecord/lib/active_record/relation/finder_methods.rb @@ -225,10 +225,7 @@ module ActiveRecord def apply_join_dependency(relation, join_dependency) relation = relation.except(:includes, :eager_load, :preload) - - join_dependency.join_associations.each do |association| - relation = association.join_relation(relation) - end + relation = join_dependency.join_relation(relation) if using_limitable_reflections?(join_dependency.reflections) relation diff --git a/activerecord/lib/active_record/relation/merger.rb b/activerecord/lib/active_record/relation/merger.rb index bda7a76330..eea43aff0e 100644 --- a/activerecord/lib/active_record/relation/merger.rb +++ b/activerecord/lib/active_record/relation/merger.rb @@ -94,9 +94,7 @@ module ActiveRecord []) relation.joins! rest - join_dependency.join_associations.each do |association| - @relation = association.join_relation(relation) - end + @relation = join_dependency.join_relation(relation) end end |