могу ли я использовать «И» , чтобы указать, где в соединении создать призму?

#node.js #apollo #prisma

Вопрос:

я хочу создать новый холдинг. есть два случая.

  1. нет ни продукта, ни учетной записи.
  2. есть один продукт, учетная запись.

поэтому я использую 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 предложении.