猫鼬文档清楚地演示了如何在给定模型类的情况下更新模型,如下所示:
Tank.update({ _id: id }, { $set: { size: 'large' }}, callback);
如果确实需要在应用程序中返回的文档,则还有另一个通常更好的选择:
Tank.findByIdAndUpdate(id, { $set: { size: 'large' }}, function (err, tank) {
if (err) return handleError(err);
res.send(tank);
});
但是我找不到更新现有模型的语法,就像下面这样:
tank.update({ $set: { size: 'large' }}, callback);
是否存在?
最佳答案
支持您问题中的以下示例:
tank.update({ $set: { size: 'large' }}, callback);
这种
update
风格的文档是here,因为它是基本Document
的一部分,而不是Model
本身。但是,请记住,调用您的
tank
对象将不会更新,只会更新数据库中的实际文档。