如何根据以前的状态修改mongoose文档?

时间:2014-12-01 14:40:40

标签: mongodb mongoose

所以我读了一篇SO文章,询问如何更改多个文档以及我的代码是:

Person.create( peopleObjects, function (err, data){
    console.log('create ' + data);

    Person.find().gt('age', 25).update({} , { age: 35 }, { multi: true }, function (err, data){
        console.log('update >25 = 35 ' + data);

        Person.find( function (err, data){
            console.log('find ' + data);
        });
    });
});

现在,我想要的是将年龄超过25岁的人的年龄提高10倍。 我之前做过的只是把它设置为35。

我已经尝试过用猫鼬弄乱了但我感到困惑所以我有点希望有人知道该怎么做

1 个答案:

答案 0 :(得分:1)

这就是$inc更新运算符的用途:

Person.update(
    // Find all docs where age > 25
    {age: {$gt: 25}},
    // Increment each of those docs' age by 10
    {$inc: {age: 10}},
    {multi: true},
    callback);