Sha256: 536f1ba0da962b758eee3393f5884737f9fe4fbe4d14c803bc3b6e078d24ba62

Contents?: true

Size: 711 Bytes

Versions: 14

Compression:

Stored size: 711 Bytes

Contents

module ActiveRecord
  class Relation
    class WhereClause
      def to_h(table_name = nil)
        equalities = equalities(predicates)

        # CPK Adds this line, because ours are coming in with AND->{EQUALITY, EQUALITY}
        equalities = predicates.grep(Arel::Nodes::And).map(&:children).flatten.grep(Arel::Nodes::Equality) if equalities.empty?

        if table_name
          equalities = equalities.select do |node|
            node.left.relation.name == table_name
          end
        end

        equalities.map { |node|
          name = node.left.name.to_s
          value = extract_node_value(node.right)
          [name, value]
        }.to_h
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
composite_primary_keys-12.0.9 lib/composite_primary_keys/relation/where_clause.rb
composite_primary_keys-12.0.8 lib/composite_primary_keys/relation/where_clause.rb
composite_primary_keys-12.0.6 lib/composite_primary_keys/relation/where_clause.rb
composite_primary_keys-12.0.5 lib/composite_primary_keys/relation/where_clause.rb
composite_primary_keys-12.0.4 lib/composite_primary_keys/relation/where_clause.rb
composite_primary_keys-12.0.3 lib/composite_primary_keys/relation/where_clause.rb
composite_primary_keys-12.0.2 lib/composite_primary_keys/relation/where_clause.rb
composite_primary_keys-12.0.1 lib/composite_primary_keys/relation/where_clause.rb
composite_primary_keys-12.0.0 lib/composite_primary_keys/relation/where_clause.rb
composite_primary_keys-12.0.0.rc5 lib/composite_primary_keys/relation/where_clause.rb
composite_primary_keys-12.0.0.rc4 lib/composite_primary_keys/relation/where_clause.rb
composite_primary_keys-12.0.0.rc3 lib/composite_primary_keys/relation/where_clause.rb
composite_primary_keys-12.0.0.rc2 lib/composite_primary_keys/relation/where_clause.rb
composite_primary_keys-12.0.0.rc1 lib/composite_primary_keys/relation/where_clause.rb