使用Express和MongoDB,如何更新文档,然后获取该更新的文档?
以下代码将查找具有给定user.id的配置文件,然后从体验数组中删除具有给定exp_id的体验。但是,它将返回原始配置文件(包括已删除的体验),而不是更新的配置文件。
let profile = await Profile.findOneAndUpdate(
{ user: req.user.id },
{ $pull: { experience: { _id: req.params.exp_id } } },
{ returnNewDocument: true }
)
console.log(profile); // logs the original profile, still incl the removed experience
需要什么更改才能返回更新的配置文件?
文档:https://docs.mongodb.com/manual/reference/method/db.collection.findOneAndUpdate/