node.js - 为什么 findOneAndUpdate() 不更新文档?
问题描述
我是使用 mongoose 的新手,我在更新文档时遇到了问题。我的代码找到了文档,但没有更新属性并最终删除了文档。我究竟做错了什么?
router.put("/hostGame/hostConfirm", (req, res, next) => {
GameModel.findOneAndUpdate(req.body.filter, req.body.update)
.then( game => {
console.log(game);
})
.catch(err => {
console.log(err)
res.send(err)
})
})
解决方案
默认情况下,原始文档是从findOneAndUpdate返回的。您需要启用该new
选项以获取更新的文档:
GameModel.findOneAndUpdate(req.body.filter, req.body.update, {new: true})
推荐阅读
- python - Python .join 交互未按预期工作
- r - 检查多个 NA 列并在 R 中返回另一列
- r - 将函数应用于多个文件并处理生成的数据帧
- python - 从表中获取所有关系的列表 Flask SQLalchemy
- c# - 使用取消令牌为用户定义的函数设置超时
- java - 无法向本地服务器发出请求
- azure - Azure B2C 自定义策略 + OpenID 连接 c# 库
- c - gcc for ARM refuses to include Newlib standard directories
- c++ - 模板相关参数的类模板参数推导
- kubernetes - 如何解释 Kubernetes Calico Networking 路由表上的几点?