Данные Rails GraphQL отличные от базы данных - PullRequest
0 голосов
/ 17 февраля 2020

Обычно кажется, что запросы GraphQL в Rails ожидают установления соединения с базой данных, например, если запрос возвращает UserType, то GraphQL, похоже, ожидает существования app/models/user.rb, то есть требуется соединение с базой данных. Но я бы хотел, чтобы запрос возвращал произвольные данные, которые не получены из запроса к базе данных через конкретную модель. Я пробовал что-то вроде этого:

# app/graphql/types/query_type.rb

module Types
  class QueryType < Types::BaseObject

    ...
    include Queries::ArbitraryData # problem occurs here...
    ...

  end
end
# app/graphql/queries/arbitrary_data.rb
module Queries
  class ArbitraryData < Queries::BaseQuery
    description 'some exciting information'

    type Types::ArbitraryDataType, null: false

    def resolve
      return {info: 'some exciting information will go here'}
    end
  end
end
# app/graphql/types/arbitrary_data_type.rb

module Types
  class ArbitraryDataType < Types::BaseObject
    field :info, JsonType, "some exciting information", null: false

    def info
      object[:info]
    end
  end
end

... но, не повезло. С вышеупомянутой конфигурацией я получаю wrong argument type Class (expected Module) в строке, отмеченной в первом файле.

Предположительно, я неправильно понял, как это должно работать, предполагая, что это возможно. Предложения приветствуются!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...