Bil*_*han 7 mongoose mongodb node.js
使用 mongodb-4.0.10 和 mongoose-5.2.10
添加useFindAndModify: false到 mongoose 配置以避免出现如下警告:
DeprecationWarning: Mongoose:
findOneAndUpdate()和findOneAndDelete()没有将useFindAndModify选项设置为 false 的情况均已弃用。DeprecationWarning:collection.findAndModify 已弃用。请改用 findOneAndUpdate、findOneAndReplace 或 findOneAndDelete。
但现在运行应用程序时出现“不支持选项 [useFindAndModify]”。
Kun*_*agi 11
对于面临此问题的其他人,useFindAnyModify如果您使用 mongoose 版本 6+,则不受支持。
为了解决这个问题,我们可以删除useFindAnyModify或降级 mongoose 版本以使用 v5+。
首先,将 mongoose 更新到 ^latest ( 5.8.X) 版本。
然后重写你的代码并尝试像这样使用它
mongoose.connect(`mongodb+srv://${login}:${password}@${hostname}/${auth_db}`, {
useNewUrlParser: true,
useFindAndModify: false,
retryWrites: true,
w: "majority",
});
mongoose.Promise = global.Promise;
Run Code Online (Sandbox Code Playgroud)
另外,根据mongoose 文档,findOneAndUpdate您可以findOne通过触发结果来使用和更新文档.save。
| 归档时间: |
|
| 查看次数: |
21691 次 |
| 最近记录: |