当我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){
我的文档已成功更新,但r
为null
!
我希望能够返回我的更新文档
看起来这个操作看起来没有,那么我怎样才能回复那些被改变的文件呢?
答案 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了解更多信息。