我有一个用户文档数组,每个用户都有一个数字的followers属性,我只想将此属性加1,然后立即更新数据库中的所有这些用户文档。
在请求中,我有一个用户ID数组,我使用这些ID进行查询以获得一个用户文档数组。
const users = await User.find({"_id": {$in: req.body.ids}});
每个用户文档都有一个称为Followers的属性,该属性是一个数字。
const userSchema = new mongoose.Schema({
// other attributes...........,
followers: {
type: Number,
default: 0
}
});
我想增加用户数组中每个用户的关注者数量,并立即更新数据库,而无需发送单独更新每个用户的请求,这有可能吗?
预先感谢
答案 0 :(得分:2)
您可以使用$inc并运行updateMany
:
await User.updateMany({"_id": {$in: req.body.ids}}, { $inc: { followers: 1 } });