我对mongodb绝对没有经验,所以我问如何从流星集合中检索文档。 我检查是否有用户的文档,并用对象
更新它 if (Saves.find({_id: Meteor.userId()}).fetch()) {
console.log("Before " +Saves.find({_id: Meteor.userId()}).fetch())
if (Meteor.isServer){
Saves.update( {_id: Meteor.userId(), save: save} )
}
console.log("Success " + Saves.find({_id: Meteor.userId()}).fetch())
我希望通过console.log
获取“保存”对象,但是如果我不使用[object Object]
(显然输出游标对象),它们现在都不输出任何内容或fetch()
答案 0 :(得分:0)
如您所述,Collection.find()返回cursor,而Collection.find()。fetch()返回文档。
我不确定我是否明白你要做的事情,但也许是这样的事情(未经测试):
var cursor = Saves.find({ _id : Meteor.userId() /* , save : { $not : true } */ });
cursor.forEach(function(item) {
console.log(item);
Saves.update({ _id : item._id }, { $set : { save : true } });
});
您可以使用Meteor方法将整个内容包装起来,以利用延迟补偿,并确保使用Collection.update进行写入权限。