node.js - 如何使用 Node.js 在 MongoDB 中查找记录

标签 node.js mongodb express

我正在尝试查找我的集合是否有 profilename = john 的记录,如果存在,我返回 status success 否则我返回失败,但就我而言,它这两种情况都返回成功。我是 Node 和 mongo 的新手,任何人都可以帮助我。

我的功能,

    exports.searchprofilename = function (req, res) {
  var params = req.params;console.log(req.params.id);
  var record= db.collection('profile');
   record.find({profilename:params.id}, (err, result) => {
   if (err){ return console.log(err)
    }
      if(!result){
            data = {status:'success'};
        } else{
             data = {status:'profile name already exists'};
        }
      res.send(data);
  });
};

最佳答案

如果您只是检查记录是否存在,那么您应该可以轻松地使用 db.collection.count() 方法并检查记录数是否= 0 来完成。

https://docs.mongodb.com/manual/reference/method/db.collection.count/

老实说,我对 mongodb 还很陌生,我仍然无法理解游标的概念,游标是 db.collection.find() 的返回类型,如https://docs.mongodb.com/manual/reference/method/db.collection.find/

关于node.js - 如何使用 Node.js 在 MongoDB 中查找记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39565779/

相关文章:

MongoDB 过滤器(如果所有键都作为字段存在)

javascript - node.bcrypt.js 未更新对象中的密码

node.js - 在 Express 应用程序中哪里存储自定义 Handlebars 助手?

javascript - 在内存中以编程方式缩小 Javascript

javascript - 如何保护 Socket.IO?

node.js - 如何在单次上传操作中将大小大于 5mb 的文件上传到 AWS

node.js - 使用带有 http 请求的 HighlandJS 流

python - mongodb 在聚合时从同一文档的数组中获取唯一值

javascript - 嵌套的 Promise 以及如何绕过它们

node.js - axios请求总是返回200