我从Meteor开始,需要Mongo的帮助。我有一个要显示在列表上的名称集合,并且希望能够根据其他条件更新数据库中某些条目的一个变量。基本上我想做的是:

对于特征A = true和B = true的每个条目,将特征C更改为false。

到目前为止,我一直在尝试弄清Mongo如何处理集合元素上的“for each”循环,并针对每个元素检查条件A和B是否成立,然后检查collection.update(element,{C : 错误的})。事实证明,这比我想象的要麻烦得多。我想做这样的事情(使用虚拟变量名):

for (i = 0; i < collection.find().count(); i++){
    if (collection[i].A===true && collection[i].B===true)
        collection.update(collection[i], {$set: {C: false}});
};

我一直在更改此基本代码,但是开始感觉到我缺少有关索引/集合在Mongo中的工作方式的一些基本知识。您可以为这样的集合建立索引吗(如果这样,这甚至是我尝试做的最便捷的方法吗?)?

最佳答案

当然,我会在发布后立即弄清楚该怎么做,当然,这在Meteor文档中也有建议!

而且,当然,这是一个简单的解决方案:

collection.update({A: true, B: true}, {$set: {C:false}});

关于javascript - meteor /蒙哥: Finding and updating certain elements in a collection,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14016149/

10-16 00:15