1
findAndModify
작업을 사용하여 doc을 찾고 업데이트하려고합니다. Nodejs, MongoDB (노드 - mongodb- 네이티브). FindAndModify가 문서를 찾지 만 업데이트하지 않습니다
Query: {'socket_id': data.socket_id, 'weapons.type': selectedWeapon, 'battleWeapons.type':selectedWeapon}
Update: {'$inc':{'weapons.$.nums':-1, 'battleWeapons.$.nums':-1}}
나는 내 콜백 함수에서 문서를 가지고 (그래서 쿼리에 의해 발견),하지만 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) {...
})});
Mongo 콘솔에서 명령을 실행하면 모든 것이 잘 변경되지만 스크립트를 실행하지 않으면 아무 것도 변경되지 않습니다. DB와 같은 값으로, 이전과 같은 문서입니다. – Aliansys