Ich benutze express.js Server. Ich versuche, bestehende Dokumente in mongodb Sammlung zu aktualisieren Mungo mit mit Array von Objekten (jedes Objekt _id
Eigenschaft und deren Wert entspricht jedem Dokument _id
.)Aktualisieren mehrerer Dokumente mit Array von Objekt
Ein Ansatz Schleife durch Array ist, und führen Sie findByIdAndUpdate()
for(var i=0; i < expenseListToEdit.length; i++) {
var expense = expenseListToEdit[i];
Expense.findByIdAndUpdate(expense._id, expense, function(err, model) {
if (err) {
console.log('Error occurred while editing expense');
}
console.log('model: ' + util.inspect(model));
});
}
Aber auf diese Weise muss ich asynchrone Szenario behandeln und müssen überprüfen, wenn db-Abfrage für alle Iteration beendet ist dann nur senden Antwort zurück zum Client vom Server.
Gibt es einen alternativen Ansatz innerhalb von Mungo, um Array von Objekten auf einmal zu bearbeiten/ändern und dann den Callback aufzurufen?
Hinweis * - Jedes Array-Objekt verfügt über _id
vorhanden, die mit Dokument _id
Wert übereinstimmt.
bitte versuchen Sie es eine Erklärung hinzuzufügen, wie dieser Code funktioniert und warum, vielleicht mit Links zur Dokumentation – dhdavvie