NodeJS + Mongo – 如何获取集合的内容?
我正在用mongo写一个简单的NodeJS应用程序。 为了连接到mongo我使用:
var mongo = require('mongodb'), Server = mongo.Server, Db = mongo.Db, ObjectID = require('mongodb').ObjectID; db.open(function(err,db) {...};
所以,我有数据库“文档”,并创build了一个名为“公司”的集合。 现在它有4个对象(logging)。 我想以数组的forms获取这个集合的全部内容,并逐行显示它们:
//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
callback的companies
参数是一个Cursor
对象,而不是一个数组。 对它调用toArray
将查询结果转换为一个对象数组,或者each
对象each
处理一个结果。
使用.each而不是forEach