Redwood JS: невозможно запросить поле XX по типу «Запрос»

У меня возникла проблема с GraphQL, которая возникла недавно, и я не уверен, куда идти, поскольку считаю, что правильно следую документации GraphQL при выполнении запросов.

Имею следующую модель.

      model Contract {
  id           Int        @id @default(autoincrement())
  userId       Int?
  vin          String
  make         String
  model        String
  year         Int
  ownersName   String     @default("")
  createdAt    DateTime   @default(now())
  updatedAt    DateTime   @updatedAt
  ownersEmail  String     @default("")
  User         User?      @relation(fields: [userId], references: [id])
  Dealership   Dealership @relation(fields: [dealershipId], references: [id])
  notes        Note[]
  dealershipId Int
}

Вот связанные типы

      type Contract {
    id: Int!
    vin: String!
    make: String!
    model: String!
    year: Int!
    ownersName: String!
    User: User
    userId: Int
    createdAt: DateTime
    updatedAt: DateTime
    ownersEmail: String
  }
  type Query {
    contractsByUser: [Contract]
  }

и вот мой запрос, который я экспортирую из ячейки

      export const QUERY = gql`
  query ContractByUser {
    contractsByUser {
      id
      vin
      make
      model
      year
      ownersName
      createdAt
    }
  }

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

      api | ERROR [2021-08-04 13:28:03.477 +0000] (apollo-graphql-server): GraphQL didEncounterErrors
api |     errors: [
api |       {
api |         "message": "Cannot query field \"contractsByUser\" on type \"Query\".",
api |         "locations": [
api |           {
api |             "line": 2,
api |             "column": 3
api |           }
api |         ]
api |       }
api |     ]
api | INFO [2021-08-04 13:28:03.479 +0000] (apollo-graphql-server): GraphQL willSendResponse
api |
api | Error: Cannot query field "contractsByUser" on type "Query".
api |
api |
api | POST /graphql 400 21.533 ms - 1329
api |
api | GraphQLError: Cannot query field "contractsByUser" on type "Query".

Это определенно ошибка проверки, но я не уверен, что я пропустил или сделал неправильно. Я использую последнюю версию Redwood и обновил критические изменения. Любая помощь будет хорошей. Возможно, он неправильно генерирует типы или ... любая помощь будет оценена.

1 ответ

У меня была неправильно настроена функция redwood graphql, и она не импортировала сгенерированные типы.

Где я был:

      import schemas from 'src/graphql/**/*.js'
import { db } from 'src/lib/db'
import { logger } from 'src/lib/logger'
import services from 'src/services/**/*.js'

Где мне нужно было быть:

      import schemas from 'src/graphql/**/*.{js,ts}'
import { db } from 'src/lib/db'
import { logger } from 'src/lib/logger'
import services from 'src/services/**/*.{js,ts}'
Другие вопросы по тегам