mongodb - 我将 mongoDB 的 findOneAndUpdate 与 { returnOriginal: false } 一起使用,但它不起作用
问题描述
当我使用MongoDB
'sfindOneAndUpdate
并且我有声明{ returnOriginal: false }
但它不起作用并且当我成功更新时它返回我过时的数据我希望在更新后返回数据。我的MongoDB
版本是“4.1.0”。
const update = async (id, data) => {
try {
const result = await getDB()
.collection(columnCollectionName)
.findOneAndUpdate(
{ _id: ObjectId(id) },
{ $set: data },
{ returnOriginal: false }
);
return result.value;
} catch (error) {
throw new Error(error);
}
};
解决方案
文档说我们需要使用{new : true},但它并没有真正为我工作。对我有用的是 - {returnDocument:"after"}(另一个选项而不是“after”是“before”)
推荐阅读
- python - 可以读取不完整的excel文件吗?
- java - 尝试在 doc 文件中复制图片时出错
- reactjs - 谷歌地图 - 使用 React 使列表可点击
- regex - 在Notepad ++中使用正则表达式搜索整行并使用ize将单词更改为ise
- c# - 使用了解 .NET CIL 数组初始化代码
和哈斯菲尔德瓦 - c# - 如何使用 SSIS 有条件地使用唯一名称重命名目录中的每个文件?
- css - 在不使用 Material 的调色板颜色的情况下创建 Angular 主题
- clojure - 向量中的单个重复项
- python - python中的递归函数不会调用自己
- amazon-web-services - 我应该将 AWS 的哪些部分用于 Web 门户?