10
我试图通过Node.js与MongoDB进行接口,并且在count()方法中遇到了一些麻烦。我正在使用node-mongodb-native,它看起来像我在做什么应该工作。我的代码示例:MongoDB计数集合Node.js
var get_total_num_docs = function(db_client, query, cb){
db_client.collection(query['collection'], function(e, coll) {
coll.find(query.params, query.options, function (e, cursor) {
cursor.count(function (e, count) {
console.log(count);
return cb(e, count);
});
});
});
};
我相信,一切存在(又名都定义科尔和光标),但它只是如果我的query.params字段为空的作品(即发现整个集合的计数)。所以如果我试图用任何种类的选择器来运行查找,查找就可以工作,但是它拒绝指望返回的光标。从我在网上阅读的内容看,这看起来是正确的方式,但显然有些问题。感谢您的帮助!
你是什么意思时,你说拒不算?它给你错误的计数或抛出错误? – 2012-02-16 20:24:15
就像在它从字面上只是永远不会完成,也就是从来没有调用传递给计数的回调。我已经运行了大约10分钟,它只是从来没有完成。 coll.find调用需要非常短的时间,但是某些东西并不适用于计数。 – MrJaeger 2012-02-16 20:26:20
你有没有试过''console.log''ging你收到的每个错误对象? 什么是正在使用的查询参数和选项? – 2012-02-16 22:05:57