2

これを機能させることができません..ここで何が欠けていますか..NodeJS、Mongoskin..mapreduceの結果を取得できません。DBとコレクションは問題ないようです。

var mongo = require('mongoskin');
var db = mongo.db('localhost:27017/testdb?auto_reconnect=true&poolSize=5');

db.collection('users');
db.bind('users');

db.users.find().sort({userid: -1}).skip(0).limit(0).toArray(function(err, users) {
        //console.log(err, users);
});

m = function() {
        emit( this.userid, this);
}
r = function(k, v) {
        return {k: v}
}
db.users.mapReduce(m, r, {out: 'coll'}, function(e, c) {
                console.log(c);
                process.exit(1);            
});
4

2 に答える 2

8

マップを渡し、関数を文字列としてmongodbに還元して、サーバーで実行されるようにする必要があります。

db.users.mapReduce(m.toString(), r.toString(), {out: 'coll'}, function(e, c) {
                console.log(c);
                process.exit(1);            
});
于 2012-07-27T08:51:18.743 に答える
-1

接続文字列の前に次のように付ける必要がありました。

var db = mongo.db('mongodb://localhost:27017/testdb?auto_reconnect=true&poolSize=5');
于 2015-09-17T18:46:00.613 に答える