仅从 mongo 集合中提取 ID

extract only ids from a mongo collection

我只需要 mongodb 中集合中所有文档的 ID。我正在使用流星。现在,我正在使用基本的 ._each 循环,但我敢打赌存在更好的方法,但不幸的是它没有点击我。

下面是我的代码:

var followedIds = Doubts.find({ch : chId, userId : userId}).fetch();
    var d_ids = [];
    _.each(followedIds, function(doubt){
        d_ids.push(doubt._id)
    });

projection 中的一个小改动可以帮助您仅从集合中获取 ID:

var followedIds = Doubts.find({ch : chId, userId : userId},
      { 
           fields:{
                 _id:1
           }
      }).fetch();
    var d_ids = [];
    _.each(followedIds, function(doubt){
        d_ids.push(doubt._id)
    });
db.collection_name.find({},{"id":1})

See Docs

{}表示所有文档

{"id":1} 我们只对 id 感兴趣,对其他字段不感兴趣。

如果您只需要 ID,可以使用 _.pluck