Nel mio modello di mangusta, ho alcuni stats
che dipendono dal tempo. La mia idea è di aggiungere un middleware per modificare queste statistiche subito dopo il caricamento del modello.Modificare i valori del modello dopo il caricamento in Mongoose
Sfortunatamente, la documentazione su post
-Hooks è un po 'carente in chiarezza. Sembra che posso usare un gancio come questo:
schema.post('init', function(doc) {
doc.foo = 'bar';
return doc;
});
I loro unici esempi coinvolgono console.log
-outputs. Non spiega in alcun modo se è necessario restituire doc
o se una modifica nel post-Hook è impossibile (poiché non è asincrona, potrebbe essere poco utile per idee complesse).
Se lo pre
su 'init'
non è il modo giusto per aggiornare automaticamente un modello al caricamento, allora che cos'è?
Quindi pre-init è in realtà dopo che i dati sono stati caricati? E il documento non è nel contesto di 'this'? – Lanbo
Pre-init è dopo che i dati sono stati caricati, ma * prima * il documento è idratato con quei dati (afaik). Poiché i dati non sono ancora stati inseriti nel documento, esiste il contesto "questo" (è ancora il documento) ma sarà vuoto (iirc). – hunterloftis
Vorrei che i dottori lo spiegassero. – binki