按ID设置更新多个文档。猫鼬

时间:2013-11-20 13:08:51

标签: mongodb mongoose

我想知道mongoose是否有一些通过id set更新多个文档的方法。例如:

for (var i = 0, l = ids.length; i < l; i++) {
    Element.update({'_id': ids[i]}, {'visibility': visibility} ,function(err, records){
        if (err) {
            return false;
        } else {
            return true;
        };
    });
};

我想知道的是,如果猫鼬可以做这样的事情:

Element.update({'_id': ids}, {'visibility': visibility}, {multi: true} ,function(err, records){
    if (err) {
        return false;
    }
});

其中id是一个id数组,如['id1','id2','id3'] - 样本数组。 同样的问题要找。

1 个答案:

答案 0 :(得分:34)

最有可能是的。并且在mongodb查询中使用$in运算符进行调用以进行更新。

db.Element.update(
   { _id: { $in: ['id1', 'id2', 'id3'] } },
   { $set: { visibility : yourvisibility } }
)

您只需要找到如何在mongoose中实现$ in。