node.js - Mongoose 预中间件与 findByIdAndDelete

标签 node.js mongodb mongoose

我正在学习 Udemy for Node js 类(class)。 Mongoose 预中间件与删除一起使用,如下所示。

ReviewSchema.pre('remove', function() {
  // code goes here
});

但我的实现不同,我想使用 findByIdAndDelete。这是我的代码。

ReviewSchema.pre('findByIdAndDelete', function() {
  // code goes here
});

但是这个不会触发。我尝试在其中console.log,但它没有触发。我在这里做错了什么?

最佳答案

我相信中间件不存在。看看documentation .

但是,如果您转到 findByIdAndDeletedocumentation然后你会看到它触发了以下中间件:

  • findOneAndDelete

因此,不要使用 ReviewSchema.pre('findByIdAndDelete', ...),而是尝试 ReviewSchema.pre('findOneAndDelete', ...)

关于node.js - Mongoose 预中间件与 findByIdAndDelete,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59207137/

相关文章:

javascript - 无法在简单的node.js应用程序中找到模块mongodb

node.js - 尝试使用 mongolab 将 mongodump 与远程服务器 heroku 一起使用

regex - 使用 Mongoose 从 mongoDB 中进行选择,其中 ObjectId 不等于特定 ID

node.js - 如何对托管在 amazon linux ami 上的 nodejs express 应用程序进行 docker 化?

javascript - 这个错误说明了什么?类型 'ParsedQs' 不可分配给类型 'string'

Mongodb查询项目

node.js - 什么是 "flash data"?

node.js - 将Nginx作为其自己的容器运行,与客户端应用程序容器分开运行

node.js - 变量在 node.js http 回调函数中递增两次

node.js - 将 Node 应用程序连接到 Mlab 时遇到问题(错误 : URL malformed, 无法解析)