我正在构建一个简单的提要,用户可以在其中查看他关注的人的所有帖子。
所以理论上我想做的是获取所有帖子(findMany),其中帖子作者后面跟着请求的用户。
听起来很简单,但我在文档中找不到任何解释如何操作的内容。
这是我的架构:
用户:
model User {
uid String @id @default(uuid())
username String? @db.VarChar(24) @unique
followers Follows[] @relation(name: "follower")
following Follows[] @relation(name: "following")
}
帖子:
model Post {
id Int @id @default(autoincrement())
name String @db.VarChar(255)
author User @relation(fields: [authorId], references: [uid])
authorId String
跟随(显式多对多)
model Follows {
follower User @relation(name: "follower", fields: [followerId], references: [uid])
followerId String
following User @relation(name: "following", fields: [followingId], references: [uid])
followingId String
这是我想象的工作方式:
return prisma.post.findMany({
where: {
author: {
some: {
followers: {
followerId: {
equals: args.userId
}
}
}
}
},
include: {
author: {
include: {
followers: {
include: {
follower: true
}
}
}
}
}
})
我遇到的错误:
Unknown arg `some` in where.author.some
我也尝试过不使用“some”,但随后我得到以下输出:
Unknown arg `followers` in where.author.followers
您目前面临的问题解决了吗?