web-dev-qa-db-ja.com

mongoのdb.collection.findで投影が機能しない

私は1日前にmongodbを使い始め、問題に遭遇しました。最終的な回答で_id値を非表示にする方法をネットとstackoverflowで検索し、コードを実行しようとしたが_idの部分がまだ表示されている場合は回答に従います。

追伸:私はcloud9をIDEとして使用しています。

var mongo = require('mongodb').MongoClient;
mongo.connect('mongodb://localhost:27017/learnyoumongo', function(err, database) {
        if(err) throw err;
        const db = database.db('learnyoumongo');
        var parrots = db.collection('parrots');
        parrots.find({
            age: { $gt: +process.argv[2] }
        },{
            name: 1,
            age: 1,
            _id: 0
        }).toArray(function(err, docs){
            if(err) throw err;
            console.log(docs);
            database.close();
        });
});
15

次のように投影を分離できます。

    parrots.find({
        age: { $gt: +process.argv[2] }
    }).project({_id:0}).toArray(function(err, docs){
        if(err) throw err;
        console.log(docs);
        database.close();
    });

私は投影を機能させることができないという同じ問題を抱えており、上記の方法はうまくいきました

37
Jo Gro