aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord
diff options
context:
space:
mode:
authorSean Griffin <sean@seantheprogrammer.com>2016-05-30 16:22:43 -0400
committerSean Griffin <sean@seantheprogrammer.com>2016-05-30 16:22:43 -0400
commitd92a0d040d68038f111adf64446c8d0abf949729 (patch)
tree4f0d24fb3fab8de4144feb349d7f3a55a4bb5f33 /activerecord
parent02da8aea832485044fde1b94c021a66d37d54dec (diff)
parent09976b458ba181f15028328a7607ba6073bd8335 (diff)
downloadrails-d92a0d040d68038f111adf64446c8d0abf949729.tar.gz
rails-d92a0d040d68038f111adf64446c8d0abf949729.tar.bz2
rails-d92a0d040d68038f111adf64446c8d0abf949729.zip
Merge pull request #25179 from kamipo/reuse_result_of_associated_table
Reuse a result of `table.associated_table(column)` in `AssociationQueryHandler.value_for`
Diffstat (limited to 'activerecord')
-rw-r--r--activerecord/lib/active_record/relation/predicate_builder/association_query_handler.rb5
1 files changed, 3 insertions, 2 deletions
diff --git a/activerecord/lib/active_record/relation/predicate_builder/association_query_handler.rb b/activerecord/lib/active_record/relation/predicate_builder/association_query_handler.rb
index d7fd878265..413cb9fd84 100644
--- a/activerecord/lib/active_record/relation/predicate_builder/association_query_handler.rb
+++ b/activerecord/lib/active_record/relation/predicate_builder/association_query_handler.rb
@@ -2,13 +2,14 @@ module ActiveRecord
class PredicateBuilder
class AssociationQueryHandler # :nodoc:
def self.value_for(table, column, value)
- klass = if table.associated_table(column).polymorphic_association? && ::Array === value && value.first.is_a?(Base)
+ associated_table = table.associated_table(column)
+ klass = if associated_table.polymorphic_association? && ::Array === value && value.first.is_a?(Base)
PolymorphicArrayValue
else
AssociationQueryValue
end
- klass.new(table.associated_table(column), value)
+ klass.new(associated_table, value)
end
def initialize(predicate_builder)