当有一个标准时,node.js中的mongodb投影被忽略
我使用express,mongodb和monk来编写node.js应用程序。
当我只用标准进行查找或只用预测的时候,我得到了预期的结果,但是当我用这两个查找时,返回完整的文档,即不执行投影。 我的代码如下所示:
var collection = db.get('myDB'); collection.find({field1: "value"},{field2: 1, _id: 0},function(e,docs) { ...do stuff with docs... });
它不仅返回field2
而且返回与field1
上的条件匹配的所有文档的所有字段。 我可以从这里得到field2
,但我不喜欢它的低效率。
有没有办法使用标准和预测?
Monk使用以空格分隔的string进行字段投影,在字段名前添加-
以排除字段名。
所以它应该是:
var collection = db.get('myDB'); collection.find({field1: "value"}, 'field2 -_id', function(e,docs) { ...do stuff with docs... });