MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Express node.js controller non attende la manipolazione dei dati e restituisce i vecchi dati

Penso che il tuo valore di ritorno finalQuizs viene compilato prima di forEach dichiarazione. Quindi le query di aggiornamento non lo cambiano come previsto. Questo è il motivo per cui vengono aggiornati i dati dopo l'aggiornamento della pagina.
Se prevedi di avere user_participated: true nel valore restituito, dovresti ottenerlo dopo findOneAndUpdate line. Dovresti fare qualcosa del genere alla fine di try blocco:

return await newQuiz.findAll();