7

私はmongoで簡単なNodeJSアプリを書いています。mongo に接続するには、次を使用します。

var mongo = require('mongodb'),
Server = mongo.Server,
Db = mongo.Db,
ObjectID = require('mongodb').ObjectID;
db.open(function(err,db) {...};

データベース「ドキュメント」があり、「会社」というコレクションを作成しました。現在、4 つのオブジェクト (レコード) が含まれています。このコレクションの内容全体を配列として取得し、行ごとに表示したいと考えています。

//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);
            }
        );
    });
});
});

ただし、ノードは次のようなエラーを返します。

TypeError: Object #<Cursor> has no method 'forEach'

何か案は?前もって感謝します。

4

2 に答える 2

7

コールバックcompaniesに渡されるパラメーターは、配列ではなくオブジェクトです。これを呼び出して、クエリ結果をオブジェクトの配列に変換するか、結果を一度に 1 つずつ処理します。findCursortoArrayeach

于 2012-06-06T20:34:01.987 に答える
3

forEach の代わりに、会社で .each を使用する

于 2012-06-06T20:32:00.130 に答える