#node.js #apollo #prisma
Вопрос:
я хочу создать новый холдинг. есть два случая.
- нет ни продукта, ни учетной записи.
- есть один продукт, учетная запись.
поэтому я использую connectOrCreate!. Я хочу найти номер учетной записи с идентификатором пользователя и номером учетной записи, поэтому я использую И где. но есть и ошибки.
Неизвестный аргумент AND
в data.AccountNum.connectOrCreate.где.И для типа AccountNumberWhereUniqueInput. Ты это имел в виду id
? Доступные аргументы
const holding = await client.holding.create({ data: { holdingNum, accountNum: { connectOrCreate: { where: { AND: [{ userId: loggedInUser.id }, { accountNumber }] }, create: { accountNumber, user: { connect: { id: loggedInUser.id, }, }, org: { connect: { orgCode, }, }, }, }, }, product: { connectOrCreate: { where: { prodCode, }, create: { prodCode, prodName, }, }, }, }, }); model AccountNumber { id Int @id @default(autoincrement()) org Organization @relation(fields: [orgId], references: [id]) orgId Int user User @relation(fields: [userId], references: [id]) userId Int accountNum String holdings Holding[] } model Holding { id Int @id @default(autoincrement()) accountNum AccountNumber @relation(fields: [accountNumId], references: [id]) accountNumId Int product Product @relation(fields: [productId], references: [id]) productId Int holdingNum Int evalAmt Int? } model Product { id Int @id @default(autoincrement()) prodName String prodCode String @unique posts Post[] holdings Holding[] proposes Propose[] }
Ответ №1:
Я думаю, что вам не нужны И :
accountNum: { connectOrCreate: { where: { userId: loggedInUser.id , accountNumber }, ... }
Комментарии:
1. Это правильно, И подразумевается при передаче нескольких условий в
where
предложении.