json - NodeJS + Mongo - 如何获取集合的内容?

标签 json node.js mongodb

我正在用 mongo 编写一个简单的 NodeJS 应用程序。为了连接到 mongo,我使用:

var mongo = require('mongodb'),
Server = mongo.Server,
Db = mongo.Db,
ObjectID = require('mongodb').ObjectID;
db.open(function(err,db) {...};

所以,我有数据库“文档”,并且创建了一个名为“公司”的集合。现在它有 4 个对象(记录)。我想以数组的形式获取这个集合的全部内容并逐行显示:

//get companies list
app.get('/companies',function(req,res){
db.collection("companies",function(err,collection){
    collection.find({},function(err, companies) {
        companies.forEach(function(err,company){
                console.log (company);
            }
        );
    });
});
});

但是,Node 向我返回了这样的错误:

TypeError: Object #<Cursor> has no method 'forEach'

有什么想法吗?提前致谢。

最佳答案

传递到 find 回调的 companies 参数是 Cursor对象,而不是数组。在其上调用 toArray 将查询结果转换为对象数组,或调用 each 一次处理一个结果。

关于json - NodeJS + Mongo - 如何获取集合的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10921743/

相关文章:

android - 服务器更新设备未使用

python - 将 Flask 与 PyMongo 结合使用

javascript - Lambda NodeJS 没有插入到 MongoDB

java - 执行存储在字符串中的函数。 java

json - 在 Terraform 变量中使用 JSON 格式的字符串

node.js - 如何在一定时间内阻止api重复请求

javascript - 我的文档何时使用 Mongoose 保存功能保存?

ios - HTTP 状态 500 - 请求处理失败

ios - 可编码 swift 4

node.js - 如何使用api将图片从canvas发送到服务器?