我设置了一个查询,以返回除其ID之外的所有客户,如下所示:
var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/";
MongoClient.connect(url, function(err, db) {
if (err) throw err;
var dbo = db.db("mydb");
dbo.collection("customers").find({}, { _id: 0, name: 1, address: 1}).toArray(function(err, result) {
if (err) throw err;
console.log(result);
db.close();
});
});
但它仍然使用_ids返回完整结果,如下所示:
➜ tests node filter.js
[ { _id: 5a68801ec0dbfd8b5d38dc13,
name: 'John',
address: 'Highway 71' },...]
我在W3Schools上关注此示例。我的Node.JS是8.94,NPM 5.6.0和MongoDB 3.0.1。
我做错了什么?
P.S:另外,即使我将name:1
更改为name:0
以创建mix of inclusion and exclusion
错误,也不会提示并返回完整结果!
答案 0 :(得分:0)
尝试这个简单的查询
var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/";
MongoClient.connect(url, function(err, db) {
if (err) throw err;
var dbo = db.db("mydb");
dbo.collection("customers").find({}, { _id: 0 }, function (err, docs) {
if (err) throw err;
console.log(docs);
db.close();
});
});