假设我具有以下数组:
[
{_id: 1, status: "Active"},
{_id: 2, status: "Delete"},
{_id: 10, status: "Pause"},
{_id: 20, status: "Active"}
]
我想使用 mongoose 通过一个mongoDB调用更新集合status
中的字段users
。 (仅更新_id = 1,2,10,20的文档)
我的架构如下所示:
var userScheme = new Schema({
fname : String,
lname : String,
status : String,
email : String
});
db.model('user', userScheme);
注意:我要使用updateMany
而不是update
答案 0 :(得分:1)
对于那些想要完整示例而不是重新回答其他问题的人,这是我的答案,该答案基于@Ashh的答案。
db.model("user").bulkWrite(
usersArray.map((data) =>
({
updateOne: {
filter: { _id: data._id },
update: { $set: {status: data.status} }
}
})
)
);