提问者:小点点

如何限制猫鼬寻找响应以显示目标


下面是我的代码:

router.get('/list/all',(req, res, next) => {
    Order.find((err, result) => {
      res.status(200).json({
        success: true,
        result: result._id //Doesn't work
      });
    });
  });

我希望我的api只返回objectds

我该怎么办?

提前谢谢!


共2个答案

匿名用户

基于mongoose文档,.find接受以下参数:

参数:

  • 筛选器“ObjectObjectId”
  • [project]~objectString;要返回的可选字段,请参见query.prototype.select()
  • [options]~object;可选参见query.prototype.setoptions()
  • [回调]~函数

因此您可以将投影上的_id设置为1,它将只返回_id字段

Order.find({}, { _id: 1}, (err, result) => {
      res.status(200).json({
        success: true,
        result
      });
);

匿名用户

使用.toObject()将传入的文档转换为对象,或者使用lean()函数

 Order.find().lean().exec((err, result) => {})

在此处了解有关lean的更多信息