Heim > Artikel > Web-Frontend > Es gibt eine detaillierte Einführung zum Aktualisieren von Objekten in Mungo
Vor kurzem habe ich bei der Verwendung von Mungo einen Wissenspunkt entdeckt, auf den ich vorher nicht geachtet hatte. Der folgende Artikel stellt Ihnen hauptsächlich die beiden Methoden zum Aktualisieren von Objekten in Mungo vor und vergleicht die beiden Methoden im Detail anhand von Beispielcode. Um allen eine bessere Referenz zum Lernen zu geben, können Freunde in Not darauf verweisen.
Vorwort
Mongoose ist ein Objektmodelltool für den bequemen Betrieb von Mongodb in der asynchronen Umgebung von node.js
Also Um es zu verwenden, müssen Sie zuerst node.js und mongodb installieren. Eine Einführung in die Installation und den Betrieb von mongodb finden Sie unter: //www.jb51.net/article/80296.htm
Demo
Beschreiben Sie das Szenario
Aktualisieren Sie den Einkauf Warenkorbmenge und Prüfstatus
Geschäftslogik
Fragen Sie das Warenkorbobjekt „Cart“ des aktuellen Benutzers ab und aktualisieren Sie die Menge und die ausgewählten Felder, die von übergeben wurden Frontend
Methode 1
var _ = require('underscore'); Cart.findOneAndUpdate({ _id: req.body.cart._id, user: user }, _.pick(req.body.cart, 'quantity', 'selected'), { new: true }, function(err, updatedCart) { res.send( utils.json({ data: updatedCart }) ); } );
Hinweis: _.pick entspricht
{ quantity: req.body.cart.quantity, selected: req.body.cart.selected }
Methode 2
var _ = require('underscore'); Cart.findOne({ _id: req.body.cart._id, user: user }, function(err, cart) { if (err) { console.log(err); } // 复制对象 _.extend(cart, req.body.cart); cart.save(function(err, updatedCart) { res.send( utils.json({ data: updatedCart }) ); }); } );
Vergleich
Der erste Code verwendet findOneAndUpdate in nur einem Schritt, Dies ist prägnanter und eignet sich für neuere Szenarien mit wenigen und sehr klaren Feldern.
Die zweite Methode besteht darin, zuerst „findOne“ zu finden und dann die Entität zu speichern. Dabei wird das Kopieren von Unterstrichobjekten verwendet, um die Bedienung des gesamten Objekts flexibler zu gestalten geeignet für Szenarien mit vielen und unsicheren Feldern
Fazit
Anforderungen ändern sich ständig, daher verwende ich grundsätzlich die zweite Option.
Ich habe das Obige für Sie zusammengestellt und hoffe, dass es Ihnen in Zukunft hilfreich sein wird.
Verwandte Artikel:
So implementieren Sie die HTML-Attributbindung in Angular4
So schreiben Sie die Multiplikationstabelle mit JS
Verwendung von JS zur Berechnung des Problems beim Kauf von 100 Hühnern
Das obige ist der detaillierte Inhalt vonEs gibt eine detaillierte Einführung zum Aktualisieren von Objekten in Mungo. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!