node.js - 无法更新猫鼬中的对象数组
问题描述
我试图更新对象数组中的一个字段,但它不起作用,尽管我遵循了猫鼬的官方文档: https ://docs.mongodb.com/manual/reference/operator/update/positional/
这是对象的数组:
这是要更新的查询:
// Complete Task :
router.put("/completetask/:id/:index", (req, res) => {
const _id = req.params.id;
User.findOneAndUpdate(
{ _id, "tasks.index":Number(req.params.index) },
{ $set: { "tasks.$.isCompleted": true } },
)
.then((user) => res.send(user))
.catch((err) => console.error(err));
});
解决方案
推荐阅读
- slim - 当我尝试为 Slim 中的所有路由注册 csrf 中间件时,为什么我的依赖容器变量未定义?
- identityserver4 - ASP.NET Core 3 React SPA 模板 - 设置 AccessTokenLifetime
- javascript - 使用动态令牌在 redux 中迭代状态
- php - 响应后在客户 Middelware 中获取 ValidationException [response->exception = null]
- android - 加载 webview 时拦截验证码图像
- reactjs - 如何为每张卡片放置不同的内容
- flutter - Flutter 中用于 TextSpan 的更多 GestureRecognizers
- google-apps-script - 获取范围内的数据以处理客户端(Google 表格)
- javascript - 通过在移动设备上使用 plyr.io 最大化来强制横向模式?
- python - Windows 10 更新后与 SQL Server 的连接失败