Jak vlastně zavoláte deleteOne()
pro uživatele? Nazýváte to na uživatelském modelu nebo na jeho instanci?
To se zdá být relevantní podle dokumentace pro parametr pre hook options:
[options.document] «Boolean» Pokud je název hák pro middleware dokumentů i dotazů, nastavte na hodnotu true, chcete-li spustit na middlewaru dokumentů. Například nastavením options.document na hodnotu true použijete tento háček na Document#deleteOne() místo Query#deleteOne().
https://mongoosejs.com/docs/api.html#schema_Schema-pre
Dále poskytují příklad:
toySchema.pre('deleteOne', function() {
// Runs when you call `Toy.deleteOne()`
});
toySchema.pre('deleteOne', { document: true }, function() {
// Runs when you call `doc.deleteOne()`
});