![](/img/trans.png)
[英]Return just single Object instead of Array in NEXT.JS and MongoDB
[英]Next.js & MongoDB (without Mongoose) returning empty array
我在 Next.js 中使用 API 路由和来自 MongoDB 的示例数据。 我正在尝试从单个对象返回数据。 第一次使用 MongoDB,如果答案一直盯着我,我很抱歉。
我得到一个空数组,返回以下查询:
import { connectToDatabase } from '../../../util/mongodb';
export default async (req, res) => {
const { db } = await connectToDatabase();
const movies = await db
.collection("movies")
.find({ "_id": "573a1395f29313caabce1f51" })
.limit(20)
.toArray();
res.json(movies);
};
这对应于这样的对象:
{
"_id": "573a1395f29313caabce1f51",
"fullplot": "some text goes here"
}
我错过了什么? .find({_id: "573a1395f29313caabce1f51"})
返回该信息吗? 为什么我只看到一个空数组? 我理解为什么它返回一个数组(我添加了.toArray()
),但这不应该影响是否返回结果。
值得一提的是,不带参数的查询可以正常工作。 此查询没有问题:
import { connectToDatabase } from '../../util/mongodb';
export default async (req, res) => {
const { db } = await connectToDatabase();
const movies = await db
.collection("movies")
.find({})
.sort({ metacritic: -1 })
.limit(20)
.toArray();
res.json(movies);
};
任何帮助表示赞赏,提前致谢!
需要转换为注释中提到的 objectID。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.