标签: mongodb mongoose mongoose-schema
当MongoDB使用TTL索引时,它只会在标记为删除的所有文档上调用.remove()吗?如果是,这是否意味着每次都会调用我的.pre('remove')中间件?
.remove()
.pre('remove')
答案 0 :(得分:0)
基于TTL index的过期文档删除发生在MongoDB服务器中,因此不会调用Mongoose中间件。
当文件过期并被删除时,没有任何方法可以收到通知。如果您需要该功能,那么您应该实现自己的文档过期而不是使用TTL索引。