node.js - Mongoose 仅更新列表中的第一个元素
问题描述
我在 Nodejs 和猫鼬一起工作。我有一个奇怪的问题,当我尝试通过 id 更新 DB 中的对象时,只有第一个 'id' 被更新。这是我的代码:
user.update({'_id': { $in: req.body.ids}},
{ $addToSet: { forms: { $each: req.body.forms} } })
我检查了 ids 数组,其中有 3 个,但我得到了更新的响应:
{ n: 1,
nModified: 1,
...
解决方案
用户多:更新方法的真实选项。默认情况下,仅更新查询找到的第一个文档。
user.update({'_id': { $in: req.body.ids}},
{ $addToSet: { forms: { $each: req.body.forms} } }, {multi: true})
推荐阅读
- python-3.x - Python Parallel SSH - 如何传递多个用户名和密码
- visual-studio-code - 如何获取所有打开文件的列表?
- node.js - 验证用户后呈现主页出现问题
- javascript - 引导组件在 Architect UI 模板中不起作用
- android - 如何为 Recyclerview 中未选择的其他项目设置操作
- azure - 有没有办法使用端口 80 或 443 连接到 Azure 虚拟机上的 Kafka?如果不是,为什么?
- dialogflow-es - 收到错误“错误:14 不可用:未建立连接”
- python - Conda Build Setuptools 下载被禁用错误
- c++ - CMAKE:错误的链接器 (g++) 用于 CUDA 库链接的可执行文件
- javascript - 如何让 JavaScript split() 方法通过新行正确拆分粘贴的文本?