Class: GraphQL::Functions::Element

Inherits:
Base
  • Object
show all
Defined in:
lib/graphql/functions/element.rb

Instance Method Summary collapse

Methods inherited from Base

create, model

Instance Method Details

#call(*attrs) ⇒ Object



8
9
10
11
12
13
14
# File 'lib/graphql/functions/element.rb', line 8

def call(*attrs)
  _, args, = attrs
  return @model_class.find(args[:id]) if args[:id]
  return @model_class.first unless respond_to?(:query)
  relation = query(@model_class, *attrs)
  relation.is_a?(ActiveRecord::Relation) ? relation.first : relation
end

#typeObject



16
17
18
# File 'lib/graphql/functions/element.rb', line 16

def type
  @type ||= "Types::#{@model_class}Type".constantize
end