当MongoClient执行时,MongoJS不返回任何结果

时间:2016-01-22 23:48:41

标签: node.js mongodb mongojs

我正在尝试使用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”不是。

出了什么问题,拜托?

1 个答案:

答案 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(...);