[问题]mongoose查询修改的问题
发布于 3年前 作者 a272121742 1373 次浏览

各位用过mongoose有这方面经验或者提示的大神们,给小弟一点提示呀。 先看几个案例:

查询对象并修改保存

Model.findOne(function(err,doc){
    doc.xxx = 'xxx'; //修改,假设他有个属性是xxx
    doc.save();        //此时就能直接修改了
});

根据情况同时修改多个对象并保存

Model.find(funciton(err,docs){
    docs.forEach(function(doc){
        switch(条件){
            case 1:doc.xxx = 1;break;
            case 2:doc.xxx = 2;break;
            //.......
            //.......
            //.......
            default:doc.xxx = 0;break;
        }
        doc.save();
    });
});

统一修改多个对象并保存

Model.update(查询条件,{$set:{xxx:'xxx'}},function(err,docs){

})

有没有把第二、三种情况联合在一起的,既能一句话搞定,又能按照多种情况进行更新。

回到顶部