В моем файле модели пользователя у меня есть это промежуточное ПО:
userSchema.pre('deleteOne', { document: true, query: false }, async function(next){
await this.model("Attachment").deleteMany({ "_id": { $in: this.attachments } });
// Some more code
next();
});
И в моем файле модели приложения:
attachmentSchema.pre('deleteMany', { document: true, query: false }, async function(next){
// Some more code
});
Проблема в том, что в этом последнем промежуточном программном обеспечении deleteMany «this» относится к запросу удаленного документа, но мне нужен сам документ. Я прочитал в mon goose документах , что
Чтобы зарегистрировать updateOne или удалить Middleware в качестве промежуточного программного обеспечения документа, используйте schema.pre('updateOne', { document: true, query: false })
Но есть нет упоминания о том, как это сделать с помощью deleteMany. Как получить ссылку на удаленный документ внутри промежуточного программного обеспечения?
Заранее спасибо!