猫鼬文档清楚地演示了如何在给定模型类的情况下更新模型,如下所示:

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对象将不会更新,只会更新数据库中的实际文档。

09-25 20:14