这是我第一次尝试 prisma 并且被卡住了。所以我有“产品”和“过滤器”模型。
我希望以下查询起作用。这个想法是,我想获取具有动态匹配查询参数(名称和值)的产品。产品查询参数动态来自前端。
const products = await prisma.product.findMany({
where: {
categoryName,
subCategoryName,
filters: {
some: {
AND: [
{
name: "RAM",
value: "32GB",
},
{
name: "Storage",
value: "1TB",
},
],
},
},
},
include: {
images: true,
},
});
如果只有一个参数,比如
{
name:"RAM",
value:"32GB"
}
查询返回适当的产品,但如果有多个查询参数(如上面的原始代码),则返回空数组。
我的产品架构看起来像这样,简化后,
name String
filters Filter[]
我的过滤器架构看起来像这样,简化了
name String
value String?
product Product? @relation(fields: [productId], references:[id])
productId Int?
非常感谢