我正在尝试使用Node.js连接到MongoDB。 MongoClient工作正常,但Mongojs没有:
var MongoClient = require('mongodb').MongoClient;
var mongojs = require('mongojs');
var url = '...';
MongoClient.connect(url, function(err, client) {
var cursor = client.db("events").collection('events').find();
cursor.each(function(err, event) {
console.log("OK MONGODB");
});
});
mongojs(url, ['events']).events.find(function(err, events) {
events.forEach(function(event) {
console.log("OK MONGOJS");
});
});
“OK MONGODB”被多次记录; “OK MONGOJS”不是。
出了什么问题,拜托?
答案 0 :(得分:1)
在您的情况下,url
中使用的MongoClient
应与mognojs
不同。
假设url
为'mongodb://localhost/'
,MongoClient
即可。但是,url
used in mongojs
应添加dbname,如下所示
var db = mongojs('mongodb://localhost/mydb', ['mycollection']);
所以它应该如下
mongojs(url+'events', ['events']).events.find(...);