首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nodejs、MongoDB (node-mongodb-native)。FindAndModify找到文档,但不更新它

Nodejs、MongoDB (node-mongodb-native)。FindAndModify找到文档,但不更新它
EN

Stack Overflow用户
提问于 2013-06-14 18:12:08
回答 1查看 662关注 0票数 1

我正在尝试使用findAndModify操作来查找和更新文档。

代码语言:javascript
复制
Query: {'socket_id': data.socket_id, 'weapons.type': selectedWeapon, 'battleWeapons.type':selectedWeapon}
Update: {'$inc':{'weapons.$.nums':-1, 'battleWeapons.$.nums':-1}}

我在我的回调函数中得到了doc (所以它是通过查询找到的),但在MongoDB文档中没有变化。同样的命令在mongo控制台中也可以正常工作。它改变了我需要的一切。我做错了什么?

所以整个命令看起来是这样的:

代码语言:javascript
复制
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) {...
})});
EN

回答 1

Stack Overflow用户

发布于 2013-06-14 18:27:47

在findAndModify中,还有一个可以设置的参数,用于返回旧文档(更新前)或新文档(更新后)。我猜这一定是问题所在。为了确认,对于现有的findAndModify()命令,在运行此命令后,请检查mongo控制台中的更新文档,它必须进行更改。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17106133

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档