我正在尝试使用findAndModify
操作来查找和更新文档。
Query: {'socket_id': data.socket_id, 'weapons.type': selectedWeapon, 'battleWeapons.type':selectedWeapon}
Update: {'$inc':{'weapons.$.nums':-1, 'battleWeapons.$.nums':-1}}
我在我的回调函数中得到了 Doc(所以它通过查询找到),但是 MongoDB 文档中没有任何变化。相同的命令在 mongo 控制台中运行良好。它改变了我需要的一切。我究竟做错了什么?
所以整个命令看起来像:
db.collection('users', function (err, collection) {
var condition = {'socket_id': data.socket_id, 'weapons.type': selectedWeapon, 'battleWeapons.type':selectedWeapon},
update = {'$inc':{'weapons.$.nums':-1, 'battleWeapons.$.nums':-1}};
collection.findAndModify(condition, [['_id','asc']], update, {'new': true}, function (err, item) {...
})});