如何从流星的集合中获取文档?

时间:2013-06-29 15:17:22

标签: javascript mongodb meteor

我对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()

1 个答案:

答案 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进行写入权限。