Sha256: e616aab69b568431e385cde7c576e06972fd10853dabbcad69bbc03d3fc03cda

Contents?: true

Size: 783 Bytes

Versions: 8

Compression:

Stored size: 783 Bytes

Contents

# frozen_string_literal: true
module GraphQL::Models
  module Helpers
    def self.orders_to_sql(orders)
      expressions = orders.map do |expr|
        case expr
        when Arel::Nodes::SqlLiteral
          expr.to_s
        else
          expr.to_sql
        end
      end

      expressions.join(', ')
    end

    def self.load_association_with(association, result)
      reflection = association.reflection
      association.loaded!

      if reflection.macro == :has_many
        association.target.slice!(0..-1)
        association.target.concat(result)
        result.each do |m|
          association.set_inverse_instance(m)
        end
      else
        association.target = result
        association.set_inverse_instance(result) if result
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
graphql-activerecord-0.12.6 lib/graphql/models/helpers.rb
graphql-activerecord-0.12.5 lib/graphql/models/helpers.rb
graphql-activerecord-0.12.4 lib/graphql/models/helpers.rb
graphql-activerecord-0.12.3 lib/graphql/models/helpers.rb
graphql-activerecord-0.12.2 lib/graphql/models/helpers.rb
graphql-activerecord-0.12.1 lib/graphql/models/helpers.rb
graphql-activerecord-0.12.0 lib/graphql/models/helpers.rb
graphql-activerecord-0.11.0 lib/graphql/models/helpers.rb