【发布时间】:2021-11-26 13:10:10
【问题描述】:
我的目标是根据我标记为绿色的产品 ID(在我的 mongo DB 中的整个产品数组中)取回一个产品对象
我的后端条目如下所示:
router.get("/:id", async (req, res)=> {
const mid=req.params.id;
console.log(mid)
const products = await Product.findOne({ id: mid })
console.log(products)
if (products) {
res.send(products);
} else {
res.status(404).send({message:"product not found"})
}
});
Connsole.log(mid) 在第三行有效,它返回了正确的 id。但是,当我尝试根据第三行中的值过滤那个数组时,我总是会返回我的数据库的第一个对象,即 gopro 相机,而不是正确的对象。
输出如下:
632834528
{
_id: '5f9849daf641a82b257d529b',
id: 3484,
agentId: 66343,
title: 'GoPro Camera',
slug: 'gopro',
我做错了什么?
我也试过const products = await Product.find({ id: mid }),但它给了我整个数组而不是一个对象。
【问题讨论】:
标签: javascript arrays database mongodb mongoose