Mongoose 使用动态值更新模型

Mongoose 使用动态值更新模型,mongoose,mongoose-schema,Mongoose,Mongoose Schema,我试图用一个新插入的字段更新我的所有模型,该字段的值是动态计算的,并试图找出最好的方法 因此,假设我们有ModelA,新字段名为newProp。 对于中的每一个,动态计算newProp的值 更具体地说,在保存ModelA之前,我将执行以下操作 SchemaA.pre('save',()=>{calcNewPropValue}) 这就是模型每次修改时如何计算newProp 但我如何才能对所有型号都这样做? 我是否必须首先.find()找到我感兴趣的所有模型,计算newProp的值,然后分别计算.u

我试图用一个新插入的字段更新我的所有模型,该字段的值是动态计算的,并试图找出最好的方法

因此,假设我们有
ModelA
,新字段名为
newProp
。 对于
中的每一个,动态计算
newProp
的值

更具体地说,在保存
ModelA
之前,我将执行以下操作

SchemaA.pre('save',()=>{calcNewPropValue})

这就是模型每次修改时如何计算
newProp

但我如何才能对所有型号都这样做? 我是否必须首先
.find()
找到我感兴趣的所有模型,计算
newProp
的值,然后分别计算
.update()
每个模型

我已经看到了
.updateMany()
函数,但似乎没有为每个模型提供动态支持

有没有其他更好、更有效的方法可以实现这一点(例如函数、钩子、库)


如果动态零件所需的所有属性都在同一型号上,那么您可以考虑使用该组件,谢谢。它会做一个
计算的
字段等。唯一的问题是你不能查询它,但你可以在单个模型上访问它


现在,由于您必须转到另一个模式来实际执行动态字段,因此我建议您使用mongoDB shell脚本,在该脚本中,您可以从一个带有a的聚合开始,以获取所有需要的字段(通过左连接)然后通过

执行for循环设置模型的值,当您说它是
动态
时,这是否意味着它是一个使用模型上其他字段的值的字段,还是您设置的值?它使用其他字段的值,特别是另一个
模式的值。