Sha256: f47dd939f7c7ecbb5fff288938c0a157c97b8e72675e8ddb27dc6b589c95a485

Contents?: true

Size: 599 Bytes

Versions: 7

Compression:

Stored size: 599 Bytes

Contents

module PolymorphicIntegerType
  module PolymorphicArrayValueExtension
    def type_to_ids_mapping
      super.tap do |result|
        association = @associated_table.send(:association)
        klass = association.active_record
        name = association.name

        if klass.respond_to?("#{name}_type_mapping")
          result.transform_keys! do |key|
            klass.send("#{name}_type_mapping").key(key)
          end
        end
        result
      end
    end
  end
end

ActiveRecord::PredicateBuilder::PolymorphicArrayValue.prepend(PolymorphicIntegerType::PolymorphicArrayValueExtension)

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
polymorphic_integer_type-2.3.0 lib/polymorphic_integer_type/activerecord_5_0_0/polymorphic_array_value_extension.rb
polymorphic_integer_type-2.2.5 lib/polymorphic_integer_type/activerecord_5_0_0/polymorphic_array_value_extension.rb
polymorphic_integer_type-2.2.4 lib/polymorphic_integer_type/activerecord_5_0_0/polymorphic_array_value_extension.rb
polymorphic_integer_type-2.2.3 lib/polymorphic_integer_type/polymorphic_array_value_extension.rb
polymorphic_integer_type-2.2.2 lib/polymorphic_integer_type/polymorphic_array_value_extension.rb
polymorphic_integer_type-2.2.1 lib/polymorphic_integer_type/polymorphic_array_value_extension.rb
polymorphic_integer_type-2.2.0 lib/polymorphic_integer_type/polymorphic_array_value_extension.rb