MongoDB触发参考更新

时间:2015-12-06 08:51:49

标签: mongodb mongoose database

我在mongodb中有以下示例用户集合:

{
    _id: '1234',
    name: 'abc',
    age: '20',
    ...
}

还将包含样本数据的集合命令为:

{
     _id: '6789',
     total: '300',
     cutomer: {
          _id: '1234',
          name: 'abc'
     },
     ...
}

在我的用户页面上,用户更新了他的名字。如何触发自动更新订单集合中使用的所有用户引用。

1 个答案:

答案 0 :(得分:1)

使用类似的东西,您必须查询该用户ID,然后使用选项multi: true更新所有记录:

orders.update({customer: {_id: 1234}}, {$set: {customer: {name: 'newname'}}}, {multi: true}, function (err, affectedRows) {
    // Do something
});