nodejs + mongodb:修改现有文档

时间:2017-02-24 15:22:33

标签: node.js mongodb insert-update

我将用户的余额存储在mongo中。现在,我想在数学上添加到balance = balance + amount中的现有余额。我在函数中循环多个值,该函数获取要更新的余额数组。以下

UserModel.findOneAndUpdate({ address: accounts[c].address }, 
  { balance: accounts[c].amount }, 
  (error, user) => { 
    // do stuff
  }
);

我想要的是:

  { balance: user.amount + accounts[c].amount }, 

我还尝试先读取值,并在回调函数中执行另一个findOneAndUpdate,遗憾的是回调处理程序没有正确的索引c因此访问{{1}中的错误元素}。

1 个答案:

答案 0 :(得分:1)

而是{ balance: accounts[c].amount }尝试{ $inc: { balance: accounts[c].amount }}。它应该balance增加accounts[c].amount