mongoose更新个人模型

mongoose的文档清楚地演示了如何更新给定模型类的模型,如下所示:

Tank.update({ _id: id }, { $set: { size: 'large' }}, callback); 

如果我们确实需要在我们的应用程序中返回的文档,还有另外一个更好的select:

 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风格的文档在这里,因为它是基本的Document而不是Model本身的一部分。

但是,请记住,您所调用的tank对象不会被更新,只是数据库中的实际文档。

这很简单.save()

 tank.size = "large" tank.save(callback) 

你的callback有三个参数: error, savedTank, count

这里是在文档中 。

数组可能稍微复杂一些,但是有很多问题需要解决。