如何通过在带有 post id 和 prodCode 的 prisma 中使用 findUnique 来查找 post

how to find post by using findUnique in prisma with post id and prodCode

我只想找到一个 post 通过 post id 和 prodCode

匹配的

下面是我的查询代码。它不起作用。 如果我将 findUnique 更改为 findFirst。它有效。

const post = await client.post.findUnique({
          where: {
            AND: [
              { id: postId },
              {
                product: {
                  prodCode,
                },
              },
            ],
          },
        });

棱镜模型

model Product {
  id       Int       @id @default(autoincrement())
  prodName String
  prodCode String    @unique
  posts    Post[]
  holdings Holding[]
  proposes Propose[]

}

model Post {
  id        Int      @id @default(autoincrement())
  user      User     @relation(fields: [userId], references: [id])
  userId    Int
  product   Product  @relation(fields: [productId], references: [id])
  productId Int
  title     String
  content   String
  createdAt DateTime @default(now())
}

由于 Post.id 是唯一的,您 也不需要 prodCode 过滤。您可以使用所需的 id 查询 post 记录,然后检查连接的 product 是否具有正确的 prodCode.

我会这样做:

const post = await prisma.post.findUnique({
    where: {
      id: postId
    },
    include: {
      product: true
    }
  });

  if (post.product.prodCode === prodCode) {
    // No result for desired query
  } else {
    // "post" variable contains result of desired query
  }