【发布时间】:2016-01-11 10:18:47
【问题描述】:
我有这个代码
$scope.users = $meteor.collection( function() {
return AllClients.find({}, {name: 1, _id: 0});
});
我希望返回这样的值
/* 1 */
{
"name" : "Samsung"
}
/* 2 */
{
"name" : "HP"
}
但它仍然返回这样的值
/* 1 */
{
"_id" : "SqFP23zTXo6MqDLxP",
"code" : "A100",
"name" : "Samsung",
"address" : "Korea"
}
/* 2 */
{
"_id" : "8QtNBoBGrvv5wWpuZ",
"code" : "B100",
"name" : "HP",
"address" : "USA"
}
这是一个错误吗?或者糟糕的编码......
【问题讨论】:
-
尝试将字段投影为
var projection = { name: 1, _id: 0 }; return AllClients.find({},{fields: projection}); -
正如@chridam 所指出的,您需要提供field specifier,而不仅仅是字段。你的代码应该是
find({}, { fields : {/* your fields*/}})。 -
试过这个,但我得到一个光标错误....
-
如果我没记错的话,你总会得到_id。
.find({},{ fields: {name:1} })
标签: javascript mongodb meteor angular-meteor meteor-collections