我有一个奇怪的问题。我使用 mongoose 在 node.js 服务器中执行此查询: Transaction.update({username : user.username}, {$set: {ending : true }} ...
基本上应该设置为用户名等于 user.username
属性 pending: true
的所有项目。问题是它只将其设置为它找到的第一个元素。这可能吗?因为我的数据库中始终有 2 个元素,有时一个元素处于待处理状态,有时另一个元素处于待处理状态,但不是两者都处于等待状态。
谢谢!
最佳答案
mongoose/mongodb 的工作方式是,您必须通过选项参数指定何时允许多重更新:
Transaction.update({username : user.username}, {$set: { pending : true }}, {multi: true});
关于node.js - Mongoose更新文档: updates just the first one,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11145485/