Mongoose用$或条件更新文档

我想search具有相同的action_target.reply.idaction_target.reply.id所有活动。 像这样的东西:

 Activity .find({ $or: [ { 'action_object.reply.id': replyId }, { 'action_target.reply.id': replyId } ]}); 

但我也只想更新像这样removed属性:

 Activity .update({ 'action_object.reply.id': replyId }, { 'action_object.reply.removed': true }, { multi: true }); Activity .update({ 'action_target.reply.id': replyId }, { 'action_target.reply.removed': true }, { multi: true }); 

有没有可能以某种方式结合这两个查询? 我想更新action_target.reply.removed其中action_target.reply.idaction_target.reply.removed其中action_target.reply.id

或者我必须为此编写两个不同的查询,就像我上面所做的那样。

update调用的第一个参数是查询对象,因此您可以简单地使用相同的$或查询。 Mongo将更新由查询检索的所有文档。

 Activity .update({ $or: [ { 'action_object.reply.id': replyId }, { 'action_target.reply.id': replyId } ]}, {'action_object.reply.removed': true }, { multi: true });