我想获得更新的文件。这是我的原始代码,它成功更新但不返回文档。
collection.update({ "code": req.body.code },{$set: req.body.updatedFields}, function(err, results) {
res.send({error: err, affected: results});
db.close();
});
我使用了 toArray
函数,但这给出了错误“如果没有提供回调,就无法使用 writeConcern”:
collection.update({ "code": req.body.code },{$set: req.body.updatedFields}).toArray( function(err, results) {
res.send({error: err, affected: results});
db.close();
});
有任何想法吗?
原文由 user3803096 发布,翻译遵循 CC BY-SA 4.0 许可协议
collection.update()
只会将受影响的文档数报告给它自己的回调。要在修改时检索文档,您可以使用
collection.findOneAndUpdate()
代替(以前.findAndModify()
)。returnOriginal
选项(或new
与 Mongoose)允许您指定将找到的文档的哪个版本(原始 [默认] 或更新)传递给回调。returnOriginal
在版本3.6
--- 中已弃用。使用returnDocument: "before" | "after"
版本3.6
及更高版本。