从MongoDB monk中的结果中排除字段

时间:2014-03-06 16:00:09

标签: node.js mongodb

我想从结果中排除某些字段。 我有代码:

users = db.select('users');

users.find( {}, { sort: { points:1 }, privateKey:0, publicKey:0}, function(err,data){      
  res.send(data);
});

我想从结果中排除私钥和公钥。 我能用僧侣做到吗?

2 个答案:

答案 0 :(得分:19)

你也可以这样做:

users.find( {}, { sort: { points:1 }, fields : { privateKey:0, publicKey:0} },
  function(err,data){      
    res.send(data);
  }
);

答案 1 :(得分:3)

根据文档,find中的第一个参数是filter,第二个是projection。但是你已经使用了sort。它无法解释。您试图将投影与排序混淆。排序应该在查找和投影之后。

您可以编写{ field1: <boolean>, field2: <boolean> ... }

之类的投影

注意: find()方法始终包含_id字段,即使未明确声明该字段在投影参数中返回。

 users.find({}, { privateKey: 0, publicKey: 0 }).sort({points: 1}).toArray(
           function (err, data) {
                      res.send(data);
             });