Невозможно решить ошибку соотношения Prisma 1 - 1 и 1 - n

У меня есть 3 таблицы Prisma2, где User может иметь много Sheet и только один Doc

model User {
  id Int @default(autoincrement()) @id
  firstName String
  lastName String
  email String @unique
  sheets Sheet[]
  docs Doc?
}
model Sheet {
  id Int @default(autoincrement()) @id
  user_sheets Int
  User User @relation(fields: [user_sheets], references: [id])
  sheetName String
}
model Doc {
  id Int @default(autoincrement()) @id
  user_doc Int?
  User User? @relation(fields: [user_doc], references: [id])
  docName String
}

Я использую Prisma2 Client следующим образом, чтобы получить все листы и документы пользователя с определенным идентификатором электронной почты:

  import { PrismaClient } from '@prisma/client'
  const prisma = new PrismaClient();
  const users = await prisma.user.findMany({
            where: {
              email: email
            },
            include: {
                sheets: true,
                docs: true,
            }
        });

Я уже сделал migrate-save, migrate-up и generate

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

PrismaClientValidationError: 
Invalid `prisma.user.findMany()` invocation in
webpack-internal:///./pages/api/resume.js:12:47

{
  include: {
    sheets: true
    ~~~~~~
    docs: true
    ~~~~~~
  }
}


Unknown field `sheets` for include statement on model User.
This model has no relations, so you can't use include with it.

Пожалуйста, помогите мне понять и решить эту проблему, поскольку я использовал документ prisma2, а также следовал этому руководству: https://www.youtube.com/watch?v=jeHJbYLCgzI

но безуспешно ошибка продолжает преследовать меня.


person rohitpaniker    schedule 07.11.2020    source источник
comment
Хм, это странно! Схема выглядит так, как будто она должна учитывать этот запрос. Просто догадка, но, возможно, попробуйте rm -rf node_modules, а затем переустановите зависимости с помощью npm install. Иногда Prisma Client может не обновляться должным образом после изменения схемы ...   -  person nburk    schedule 09.11.2020
comment
Если проблема не исчезнет, ​​я бы порекомендовал вам открыть проблему на GitHub, потому что тогда это может быть ошибкой, которую вы поражаете.   -  person nburk    schedule 09.11.2020
comment
@nburk Спасибо, что уделили время изучению этого, я обнаружил проблему. Когда вы сказали переустановить node_modules, я остановил сервер и повторно выполнил команду yarn run dev, и проблема была решена. Моя ошибка заключалась в том, что я не останавливал сервер и начинал заново после того, как команда yarn generate сгенерировала Prisma Client.   -  person rohitpaniker    schedule 09.11.2020
comment
Звучит хорошо, рад слышать, что вы смогли решить эту проблему! :)   -  person nburk    schedule 09.11.2020


Ответы (1)


Проблема решена Обновление

После того, как я сделал prisma migrate save, prisma migrate up и prisma generate, я остановил сервер, работающий через терминал, и перезапустил сервер, после чего модель начала работать. Выяснилось, что проблема связана с тем, что сервер больше не перезапускается после того, как Prisma сгенерирует клиента с использованием новых миграций.

Большое спасибо @nburk за возможные предложения.

person rohitpaniker    schedule 09.11.2020