Da qualche parte tra l'ultima versione 3.8.xe 4.0 il post init
hook è stato modificato, ma non documentato. Prima della modifica this
ha fatto riferimento al documento corrente, ma ora this
è l'emettitore di eventi che ha attivato la chiamata hook. Il nuovo modo per accedere al documento corrente è aggiungere un parametro alla funzione hook, proprio come il pre save
e remove
ganci.
schema.post('init', function(doc) {
doc._original = doc.toObject();
});
Sfortunatamente, da questa modifica, tutte le proprietà non di schema aggiunte al documento sembrano essere perse tra il post init
e pre save
hooks, quindi non c'è modo di risolvere questo problema in questo momento.
Ho aperto un problema (#2952 ) su Github venerdì scorso. Al momento ci sono 387 problemi aperti, quindi non sono sicuro di quanto velocemente questo verrà risolto. Pubblicherò un aggiornamento se sento qualcosa.