node.js - 如何在nodejs中使用foreach进行Mongodb操作

标签 node.js mongodb foreach mongojs

这是我的代码,用于从使用集合名称初始化的集合组名中获取数据。我想使用 foreach 循环迭代存储在 doc 中的数据。

var db = mongojs('login');

    var cursor = db.collection(groupname).find();
    console.log(cursor);

    cursor.each(function(err, doc) {
        console.log(doc._id);

        mongo.collection(doc._id + "group", function(err, collection) {
            collection.remove({"groupname": groupname});
        });
    });

我试过执行 db.collectionname.find().forEach(....),但我收到一条错误消息,指出此类函数不存在。请帮忙。

最佳答案

从 Mongo DB 获取记录的 find() 调用是异步的。您甚至在数据可用之前就尝试使用文档。你应该在 find() 的回调中有你的 forEach 循环。

`

db.collection(groupname).find({}, function(err, doc){
console.log(doc);
doc.forEach(function(err,doc){
    console.log(doc._id);
    db=mongo.collection(doc_id+"group");
    db.remove({"groupname":groupname});
});
});

`

关于node.js - 如何在nodejs中使用foreach进行Mongodb操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33542006/

相关文章:

javascript - 嵌套回调异步运行

javascript - Node.js MySQL 查询执行流程

c# - 公共(public)属性的默认 MongoDB 序列化

MongoDB 日志文件大小

r - R中的并行连接问题

javascript - 通过名称从同一个 `module.exports` 对象调用一个函数

node.js - 通过 Node/Express 服务器将大文件 (2GB+) 流式传输到 Google Cloud Storage 存储桶

java - 通过JAVA获取mongodb中的currentdate

arrays - CakePhp foreach 仅保存数组中的最后一个值

单复数相同的项目集合的 Java 命名约定