node-mongodb显示更新结果

时间:2016-06-13 00:40:29

标签: node.js mongodb

当我db.collection('example').update({"a":1},{"$set":{"b":2}},{multi:true},function(e,r){

我得到r

{
n:3,
nModified:3,
ok:1
}

这有效,我可以看到如果我查看我的数据库,我已经成功更新了3份文件,但我的结果在哪里?

引自https://mongodb.github.io/node-mongodb-native/markdown-docs/insert.html

  

回调是记录更新后要运行的回调。有三个参数,第一个是错误对象(如果发生错误),第二个是被修改的记录计数,第三个是具有操作状态的对象。

我已经在回调中尝试了3个输出,但是我得到了null

db.collection('example').update({"a":1},{"$set":{"b":2}},{multi:true},function(e,n,r){

我的文档已成功更新,但rnull

我希望能够返回我的更新文档

看起来这个操作看起来没有,那么我怎样才能回复那些被改变的文件呢?

2 个答案:

答案 0 :(得分:1)

要在返回的结果中获取更新的文档,您需要使用db.collection.bulkWrite方法。

答案 1 :(得分:1)

您可以使用findAndModify在结果中获取更新的文档。它的回调有2个参数:  1-错误  2-更新文件

我不确定这对你有用,但请查看[文档]:https://mongodb.github.io/node-mongodb-native/markdown-docs/insert.html#find-and-modify了解更多信息。