diff options
author | Ryuta Kamizono <kamipo@gmail.com> | 2017-04-09 17:25:43 +0900 |
---|---|---|
committer | Ryuta Kamizono <kamipo@gmail.com> | 2017-04-09 17:25:43 +0900 |
commit | baf6072e4550cf2cf5e52240d0192a56dbe8e949 (patch) | |
tree | 3951c3c1f18b3d4375af448cb29c73a31c29201b /activerecord/lib/active_record/relation/predicate_builder | |
parent | cc0b566a614f6172bd579f9f3ed5648e22ecd633 (diff) | |
download | rails-baf6072e4550cf2cf5e52240d0192a56dbe8e949.tar.gz rails-baf6072e4550cf2cf5e52240d0192a56dbe8e949.tar.bz2 rails-baf6072e4550cf2cf5e52240d0192a56dbe8e949.zip |
Convert `AssociationQueryValue` to PORO queries
Diffstat (limited to 'activerecord/lib/active_record/relation/predicate_builder')
-rw-r--r-- | activerecord/lib/active_record/relation/predicate_builder/association_query_handler.rb | 30 |
1 files changed, 0 insertions, 30 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 9141d9c537..cc39aff91a 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 @@ -1,35 +1,5 @@ module ActiveRecord class PredicateBuilder - class AssociationQueryHandler # :nodoc: - def self.value_for(table, column, value) - associated_table = table.associated_table(column) - if associated_table.polymorphic_association? - case value.is_a?(Array) ? value.first : value - when Base, Relation - value = [value] unless value.is_a?(Array) - klass = PolymorphicArrayValue - end - end - - klass ||= AssociationQueryValue - klass.new(associated_table, value) - end - - def initialize(predicate_builder) - @predicate_builder = predicate_builder - end - - def call(attribute, value) - predicate_builder.build_from_hash(value.queries) - end - - # TODO Change this to private once we've dropped Ruby 2.2 support. - # Workaround for Ruby 2.2 "private attribute?" warning. - protected - - attr_reader :predicate_builder - end - class AssociationQueryValue # :nodoc: attr_reader :associated_table, :value |