我正在尝试使用 Meteor 通过 _id 查找对象。
这是我尝试过的:
Meteor.publish("gifts", function(gid) {
console.log("Looking for "+ gid);
var gifts = Gifts.find({_id: gid}).fetch();
console.log("Result: " + gifts);
return gifts;
});
这是输出:
寻找 f1790caa-7a10-4af5-a01c-e80bb2c2fd55 结果:
如果我取出查询:
Meteor.publish("gifts", function(gid) {
console.log("Looking for "+ gid);
var gifts = Gifts.find().fetch()[1];
console.log("Result:" + gifts._id);
return gifts;
});
该对象在数组中,_id同上。
寻找 f1790caa-7a10-4af5-a01c-e80bb2c2fd55 结果:
f1790caa-7a10-4af5-a01c-e80bb2c2fd55
另外,如果我在 mongo 控制台中执行查找,我会找到该对象:
> db.gifts.find({_id: 'f1790caa-7a10-4af5-a01c-e80bb2c2fd55'});
{ "name" : "A new gift", "_id" : "f1790caa-7a10-4af5-a01c-e80bb2c2fd55" }
我究竟做错了什么?
您从哪里插入文档? MongoDB 对字符串和 objectId 的处理方式不同,目前 Meteor 中似乎存在一个无法正确处理 objectId 的 bug。
https://github.com/meteor/meteor/issues/61
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)