使用mongoose中的.where()查询和.update()更新方法?

7 浏览
0 Comments

使用mongoose中的.where()查询和.update()更新方法?

在mongoose中,我如何使用.where().update()?查询条件是通过.update()的第一个参数传递的。我应该将查询条件传递给.update()并跟随一个.where('_id', id)吗?另外,我可以将这个方法应用到.findByIdAndUpdate()/.findOneAndUpdate()吗?

如果不行,是否有一种Query方法,我可以只使用更新文档并通过其他.where()方法在链式调用中指定条件?

0
0 Comments

问题的原因是调用 `where` 函数返回的是一个 `Query` 对象,该对象具有你所询问的方法: `update` 和 `findOneAndUpdate`。因此,你可以将它们链接在一起执行一些操作,例如:

MyModel.where('_id', id).update({$set: {foo: 'bar'}}, function (err, count) {});

这是否意味着传递给 `update()` 的文档是用于更新的文档,而不是查询条件的文档?

0