node.js - 在 Mongoose 中更新具有不同值的多个元素

我有包含列表的文档。假设他们是:

[
 {
  _id: 52b37432b2395e1807000008,
  name: ListA,
  order: 1,
  desc: 'More about List A'
 },
 {
  _id: 52b37432b2395e1807000009,
  name: LISTB,
  order: 2,
  desc: 'More about List B'
 },
 {
  _id: 52b37432b2395e180700000e,
  name: LISTC,
  order: 3,
  desc: 'More about List C'
 },
 {
  ..
 } 
]

现在我想使用批量更新来更改他们的订单字段。我有一个 updated_stage 顺序的 JSON

var updated_stage = [{_id: '52b37432b2395e1807000008', order:2},{_id: '52b37432b2395e180700000e', order:1}, {_id: '52b37432b2395e1807000009', order:3}]

现在我需要使用我拥有的新数组来更新 Mongoose 中的 LIST 模型。我知道我可以使用批量更新来更新具有相同值的多个文档

Model.update({ }, { $set: { order: 10 }}, { multi: true }, callback);

但我必须用不同的值更新它们。我该怎么做?最有效的方法是什么?

最佳答案

我能想到的最有效的方法是在 updated_stage 数组上运行 forEach 循环。

现在获取 _id 并更新 MongoDB 中现有文档中的顺序。

https://stackoverflow.com/questions/20854721/

相关文章:

mongodb - 为什么 MongoDB 可以创建唯一索引而 Mongoid 不能?

mongodb - 如何将 MongoDB 聚合用于通用集合操作(​​联合、交集、差异)

python - Pymongo 或 Mongodb 将两个相等的 python 字典视为不同的对象

java - 仅为一个字段编写 Mongo 转换器

javascript - MEAN堆栈中的动态html表单生成

javascript - 使用 express 将 MongoDB 查询结果作为 JSON 发送

mongodb - MongoDB中的外键关系

javascript - mongodb如何动态创建数据库/集合

mongodb - 无法使用 Mongo Shell 连接到 MongoDB Atlas 集群

node.js - ReactJS:如何在本地服务器上部署