我试图从一个没有_id字段的流星集合中拉出一个文档,但不包括:
Db.find({foo: bar}, {fields: {
test1: 1,
test2: 1,
_id: 0
}})
也不排斥:
Db.find({foo: bar}, {fields: {
test3: 0,
_id: 0
}})
似乎有效。两者都只返回一个空数组。我知道拉与_id排除的文档是可能的在蒙古包,是在流星吗?
我想你忘记了一些大括号:
Db.find({
foo: bar
}, {
fields: {
test3: 0,
_id: 0
}
});
我在某处读到,的包含/排除的混合是不支持的。这意味着,您的第一个示例将无法工作。
编辑:From the meteor docs:
字段说明符
在服务器上,查询可以指定一组特定的字段来从结果对象中包括或排除。(字段说明符是)
要从结果对象中排除某些字段,字段说明符是一个字典,其键是字段名,值为0。
Users.find({}, {fields: {password: 0, hash: 0}})
返回一个只包含指定字段的对象,使用1 as值。 _id字段仍然包含在结果中。
Users.find({}, {fields: {firstname: 1, lastname: 1}})
不可以混合使用包含和排除样式。