MongoDB 查询 FindOne 不适用于 Nodejs API?

阿卡纳

尝试使用POST API通过 id查找单个文档详细信息,但 API使用MongoDB 和 Node.js返回error 500

架构

    {
    "_id": {
        "$oid": "5cad89cabfb35db56688556c"
    },
    "articleid": "c4a3c72a-f4ec-11e7-bec2-b083fe9a696b",
    "md5id": "8e0d6ca665a977cc825bd90dc1751d53",
    "headline": "Stepping up",
    "subtitle": "",
    "type": "PRINT",
} 

模型.js

var mongoose = require('mongoose');

var schema = new mongoose.Schema({

Title: String
 },
{
    collection: 'impactliveupdated'
});

module.exports = mongoose.model('Model', schema);

控制器.js

  articlesById = function (req, res) {
  var articleids = req.body.articleids;
  var query = {

  };
  query.articleid = {
      $in: articleids
  }; 

  articlesModule.findOne(query, function (err, impacts) {
      if (err) {
          console.log("error 6");
          console.log(err);
          res.status(500);
          res.send("internal error");
      } else {
          res.status(200);
          console.log("sending data");
         // console.log(impacts);
          res.json(impacts);
      }
  });
} 

如果可能,请指导我纠正它我是 MEAN 堆栈中的新手!

乌察夫·乌帕德耶

首先,您不需要按照@Tusharshahi 的建议使用 $in 运算符,您可以使用直接 findOne 查询。

  articlesById = function (req, res) {
  var articleid = req.body.articleid; 

  articlesModule.findOne({articleid:articleid}, function (err, impacts) {
      if (err) {
          console.log("error 6");
          console.log(err);
          res.status(500);
          res.send("internal error");
      } else {
          res.status(200);
          console.log("sending data"); 
          res.json(impacts);
      }
  });
} 

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章