猫鼬更新字段并添加新字段

Nrg*_*zer 5 mongoose mongodb node.js

我已经用谷歌搜索了很多,但不幸的是,我无法解决我的问题...我的 MongoDB 中有一些文档,现在我向我的猫鼬模式添加了一个新的可选字段。不幸的是,我无法使用这个新字段更新现有文档。

MyModel.findByIdAndUpdate(req.body.modelId, {$set: req.body}, {new: true})
Run Code Online (Sandbox Code Playgroud)

这只会更新现有字段,但不幸的是它不会添加新字段。如何强制猫鼬将新字段添加到文档中?


更新:我的错误。我的模式有自己的存储库,因为我在不同的项目之间共享它们。我忘记在各自的项目中更新它们。现在一切都很完美。

ema*_*ema 5

您应该像这样更新文档:

Model.update({_id :req.body.modelId },{$set : {new_field: "value"}})
Run Code Online (Sandbox Code Playgroud)

Mongoose 可能正在做一些事情,所以最好绕过它。