我将 Prisma 与 NextJs 一起使用。
在我的 API 中,我向后端发送与数据库中对象 ID 相对应的数字列表。
举个例子,如果我收到列表[1, 2, 12]
,我想返回 id 为 1、2 或 12 的对象
这是更复杂的查询的一部分(排序/计数/...),但我在第一步阻止的是获取元素列表
到目前为止我有这个:
import { PrismaClient, Prisma } from '@prisma/client'
const prisma = new PrismaClient()
export default async function handler(req, res) {
if (req.method !== 'POST') {
res.status(400).send({ message: 'Only POST requests allowed for this route' })
} else {
const { signes_id } = req.query
const signes_array = signes_id.split(",").map(function(item) {
return parseInt(item)
})
console.log(signes_array)
const ret = await prisma.signe.findMany({
where: {
id: Number(signes_array),
}
})
res.status(200).send(ret)
}
}
这不起作用Number
需要一个 int,而不是一个 int 数组
如何编写查询,使其返回所需的对象数组?
那么如何处理不匹配的 id 呢?
您可以使用in
运算符进行多个查询id
inside findMany
.
Example:
const ret = await prisma.signe.findMany({
where: {
id: { in: [1, 2, 12] },
}
})
更多详细信息请参阅Prisma 客户端参考 https://www.prisma.io/docs/reference/api-reference/prisma-client-reference#in.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)