我有包含列表的文档。假设他们是:
[
{
_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 字典视为不同的对象
javascript - MEAN堆栈中的动态html表单生成
javascript - 使用 express 将 MongoDB 查询结果作为 JSON 发送
javascript - mongodb如何动态创建数据库/集合