Graphql-Ruby Mapping с использованием Active Record - PullRequest
0 голосов
/ 14 октября 2019

Я совершенно новичок в использовании Rails, я пытаюсь создать базовое приложение crud, используя ruby-graphql, чтобы выполнить простой запрос поиска с активной записью в базе данных sqlite3. Я установил тип пользователя

  class UserType < Types::BaseObject
    description "A user type "
    field :id, ID, null: false
    field :username, String, null: false
    field :email, String, null: false
    field :email_confirmed, Boolean, null:false
    field :first_name, String , null:false
    field :last_name, String, null:false
    field :biography, String, null:true
    field :avatar, String, null:true
    field :created_at, GraphQL::Types::ISO8601DateTime, null:false
    field :updated_at, GraphQL::Types::ISO8601DateTime, null:false
  end

Затем я настроил запрос:

field :user, UserType, null:false,
      description: "Get a single user" do
      argument :username, String, required: true
      end
    def user(username:)
      User.find(username)
    end

Мой запрос:

{
  user(username:"test"){
    username
  }
}

Я получаю следующую ошибку:

{
  "error": {
    "message": "no implicit conversion of #<Class:0x000000000b975440> into Hash",
    "backtrace": [
      "C:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/graphql-1.9.13/lib/graphql/schema/field.rb:519:in `block in resolve'",

Если бы кто-нибудь мог мне помочь, я был бы очень признателен. Как мне сделать это преобразование в Ruby / Rails?

1 Ответ

1 голос
/ 15 октября 2019

Оказалось, что была проблема с драгоценным камнем Ruby, который я использовал при обновлении до нового драгоценного камня, и это решило проблему. См. - https://github.com/rmosolgo/graphql-ruby/issues/2537

...