mongodb - 如何重构猫鼬文档更新代码以返回更新的项目而不是状态
问题描述
我想知道如何重构以下内容以返回更新的文档。
const updated = await item.update(
{ name: data.name, $inc: { seq: 1 } },
{ new: true }
);
它正在更新但返回它(即 的值updated
):
{ n: 1, nModified: 1, ok: 1 }
我也刚刚读到save
建议使用 using ,但我找不到在预保存挂钩之外使用 save 添加递增逻辑的方法。谢谢。
解决方案
该update()
方法返回一个包含操作状态的WriteResult文档。
只需尝试findOneAndUpdate(),new: true
将返回更新的文档,
const updated = await item.findOneAndUpdate(
{ name: data.name },
{ $inc: { seq: 1 } },
{ new: true }
);
推荐阅读
- python - 如何使用 Flask-SQLAlchemy 在两个表之间创建多对多关系
- android - Android Studio 3.5.2 模拟器。如何查看应用程序列表
- spring-boot - 向 infinispan 缓存添加数据时出现 ISPN000217
- arrays - 无法让我在 Ruby on Rails 中正确嵌套的强参数
- google-bigquery - 如何切换到用户帐户以访问 bigquery
- flutter - 为什么(通常)在 BLoC 模式上有一个存储库层?
- c++ - 有什么办法可以在标头中定义和声明一个外部对象?
- java - Java位操作:将两个短值组合为一个整数的方法?
- html - 电话号码结构的IE颜色问题
- c - gcc -W括号对 b=1 发出警告;!a & b 但不是 !a & 1