module GraphQL::Types::Relay::HasNodesField
Include this module to your root Query type to get a Relay-style nodes(id: ID!): [Node] field that uses the schema’s object_from_id hook.
Public Class Methods
Source
# File lib/graphql/types/relay/has_nodes_field.rb, line 40 def field_block Proc.new { #: self as GraphQL::Schema::Field argument :ids, "[ID!]!", description: "IDs of the objects." } end
Source
# File lib/graphql/types/relay/has_nodes_field.rb, line 28 def field_options { name: "nodes", type: [GraphQL::Types::Relay::Node, null: true], null: false, description: "Fetches a list of objects given a list of IDs.", relay_nodes_field: true, resolver_method: :get_relay_nodes, resolve_static: :get_relay_nodes } end
Source
# File lib/graphql/types/relay/has_nodes_field.rb, line 11 def self.included(child_class) child_class.field(**field_options, &field_block) child_class.extend(ExecutionMethods) end
Public Instance Methods
Source
# File lib/graphql/types/relay/has_nodes_field.rb, line 22 def get_relay_nodes(ids:) query_class = self.class #: as GraphQL::Types::Relay::HasNodesField::ExecutionMethods query_class.get_relay_nodes(context, ids: ids) end