Datenbankoperationen
18 min
durchführung von serverlosen datenbankoperationen einführung dieser abschnitt erklärt, wie man die crud (erstellen, lesen, aktualisieren und löschen) operationen in einer javascript umgebung über back4app implementiert es bietet auch code snippets und eine online umgebung, um ihren code ohne lokale einrichtung auszuführen und zu testen weitere informationen zum parse sdk finden sie unter parse javascript sdk api referenz https //parseplatform org/parse sdk js/api/4 3 1/ und parse open source dokumentation für das javascript sdk https //docs parseplatform org/js/guide/ voraussetzungen es gibt keine zusätzlichen voraussetzungen, außer dass sie über grundlegende kenntnisse in javascript verfügen optional um dieses tutorial mit ihrer eigenen app abzuschließen, benötigen sie eine app, die für javascript bei back4app erstellt und konfiguriert wurde hinweis folgen sie dem javascript install parse sdk tutorial https //www back4app com/docs/javascript/parse javascript sdk um zu lernen, wie sie das tun können 1 umgebung einrichten dieser leitfaden verwendet die jsbin https //jsbin com/ plattform als code editor es ist sehr einfach zu bedienen, alles, was sie tun müssen, ist, die hauptseite zu öffnen und auf die \<font color="#2166ae">html\</font> , \<font color="#2166ae">javascript\</font> und \<font color="#2166ae">konsole\</font> tasten zu klicken der erste schritt, um mit dem programmieren zu beginnen, besteht darin, die parse api einzuschließen und die schlüssel ihrer app hinzuzufügen für dieses tutorial wurde eine öffentliche back4app app erstellt, damit sie ihre änderungen in der datenbank überprüfen können, ohne ihre eigene app erstellen zu müssen optional um die parse datenbank für dieses beispiel zu überprüfen, müssen sie ihre eigene app erstellen und auf die \<font color="#2166ae">parse dashboard\</font> option zugreifen um die parse api in ihrer app einzuschließen, fügen sie die folgende zeile code innerhalb des \<font color="#2166ae">html\</font> head tags hinzu fügen sie dann ihre anmeldeinformationen am anfang der \<font color="#2166ae">javascript\</font> datei hinzu die standard schlüssel sind die, die mit unserer öffentlichen app verbunden sind //paste your application key and javascript key, respectively parse initialize("your application id", "your javascript key"); parse serverurl = "https //parseapi back4app com/"; in diesem tutorial werden wir die crud operationen basierend auf einer pet klasse erstellen, die name und altersfelder hat, wobei der name ein string und das alter eine zahl ist daher sollte der code damit beginnen, eine unterklasse der pet klasse zu erstellen, damit sie später in unseren funktionen verwendet werden kann, wie unten gezeigt var pet = parse object extend("pet"); alle grundlegenden operationen erfordern, dass der benutzer angibt, wie der gewünschte name des haustiers lautet erstellen sie auf diese weise eine globale variable „textname“ es ist auch eine gute idee, eine „textage“ variable zu erstellen, die in den erstellungs und aktualisierungsmethoden verwendet wird var textname = "myname"; var textage = 10; 2 erstellen die \<font color="#2166ae">erstellen\</font> funktion wird ein neues haustier mit dem namen und dem alter erstellen, die sie in den variablen „textname“ und „textage“ angegeben haben um diese funktion zu erstellen, folgen sie einfach diesen schritten erstellen sie eine neue instanz der parse’s pet klasse mit dem befehl verwenden sie die \<font color="#2166ae">set\</font> funktion, um die parameter für dieses objekt festzulegen rufen sie die \<font color="#2166ae">save\</font> funktion auf, die das haustier effektiv in ihrer datenbank im \<font color="#2166ae">parse dashboard\</font> registriert sie können die back4app javascript erstellen funktion https //jsbin com/bozuguh/edit?html,js,console öffnen, um den bereits implementierten code zu sehen der code für die \<font color="#2166ae">erstellen\</font> funktion ist unten geschrieben create js create(); function create() { mypet = new pet(); mypet set("name", textname); mypet set("agepet", textage); mypet save() then(function(pet){ console log('pet created successful with name ' + pet get("name") + ' and age ' + pet get("agepet")); }) catch(function(error){ console log('error ' + error message); }); } um es zu testen, fügen sie diesen code schnipsel in die javascript datei in der jsbin https //jsbin com/?html,js,output , klicken sie auf die \<font color="#2166ae">ausführen\</font> schaltfläche im konsolenbereich und warten sie auf die ausgabe es sollte ausgeben, dass das haustier erfolgreich erstellt wurde um zu bestätigen, dass das neue objekt in der datenbank ist, können sie auf das \<font color="#2166ae">parse dashboard\</font> zugreifen oder sie können die \<font color="#2166ae">read\</font> funktion codieren 3 lesen die \<font color="#2166ae">read\</font> funktion ist verantwortlich für das abfragen der datenbank und das zurückgeben des objekts, das ihren suchkriterien entspricht sie kann auch verwendet werden, um die existenz eines objekts zu überprüfen hier ist die schritt für schritt anleitung zum erstellen ihrer eigenen \<font color="#2166ae">read\</font> funktion erstellen sie eine instanz der query klasse von parse fügen sie einschränkungen zu ihrer abfrage hinzu, um die suche einzuschränken weitere einschränkungsoptionen finden sie in der parse query dokumentation http //docs parseplatform org/js/guide/#query constraints führen sie die suchmethode der abfrage aus dieses tutorial verwendet \<font color="#2166ae">query first\</font> um nur das erste element zu erhalten, das ihren kriterien entspricht wenn die operationen erfolgreich sind, wird ein haustierobjekt zurückgegeben wenn kein objekt gefunden wird, hat das rückgabeobjekt den wert undefined sie können die back4app javascript lese funktion https //jsbin com/roziroy/edit?html,js,output öffnen, um den bereits implementierten code zu sehen der code für die \<font color="#2166ae">lesen\</font> funktion ist wie folgt read js read(); function read() { query = new parse query(pet); query equalto("name", textname); query first() then(function(pet){ if(pet){ console log('pet found successful with name ' + pet get("name") + ' and age ' + pet get("agepet")); } else { console log("nothing found, please try again"); } }) catch(function(error){ console log("error " + error code + " " + error message); }); } um die \<font color="#2166ae">read\</font> funktion zu testen, fügen sie den snippet in ihre jsbin javascript datei ein wenn der code ausgeführt wird, wird das alter des gefundenen haustiers (falls gefunden) oder andernfalls die meldung ausgegeben, dass kein haustier gefunden wurde wenn beim testen das ausgegebene alter nicht mit dem alter ihres objekts übereinstimmt, bedeutet dies, dass es mehr objekte mit demselben namen gibt, aber ihre abfrage nur eines von ihnen zurückgibt um die \<font color="#2166ae">read\</font> funktion wirklich zu testen, erstellen sie ein objekt mit einem anderen namen, das noch niemand erstellt hat, und führen sie dann die funktion aus, die das alter des objekts korrekt ausgibt 4 aktualisieren für die \<font color="#2166ae">update\</font> funktion wird ein haustier als parameter übergeben und die funktion ändert sein alter auf das, das sie in der „textage“ variablen angegeben haben um das haustier zu finden, das übergeben wird, verwenden wir eine modifizierte version unserer \<font color="#2166ae">read\</font> funktion im folgenden sind die schritte aufgeführt, um ihre eigene \<font color="#2166ae">update\</font> funktion zu erstellen schreiben sie eine modifizierte read funktion namens \<font color="#2166ae">readthenupdate\</font> , die die \<font color="#2166ae">update\</font> funktion aufruft, wenn sie ein haustier erfolgreich findet in der \<font color="#2166ae">update\</font> funktion verwenden sie die \<font color="#2166ae">set\</font> funktion, um die parameter ihres haustiers zu ändern rufen sie die \<font color="#2166ae">save\</font> funktion für dieses haustier auf, um die änderungen in die datenbank zu übertragen sie können die back4app javascript update funktion https //jsbin com/jidinim/edit?html,js,output öffnen, um den bereits implementierten code zu sehen hier ist der code für die \<font color="#2166ae">readthenupdate\</font> funktion und \<font color="#2166ae">update\</font> funktion update js readthenupdate(); function readthenupdate() { query = new parse query(pet); query equalto("name", textname); query first() then(function (pet) { if (pet) { console log('pet found with name ' + pet get("name") + ' and age ' + pet get("agepet")); update(pet); } else { console log("nothing found, please try again"); } }) catch(function (error) { console log("error " + error code + " " + error message); }); } function update(foundpet) { textname = "mynameupdated"; textage = 20; console log(textage); foundpet set('name', textname); foundpet set('agepet', textage); foundpet save() then(function (pet) { console log('pet updated! name ' + pet get("name") + ' and new age ' + pet get("agepet")); }) catch(function(error) { console log('error ' + error message); }); } um zu bestätigen, ob die \<font color="#2166ae">update\</font> funktion funktioniert, fügen sie den obigen code in die javascript datei auf der jsbin seite ein verwenden sie einen ungewöhnlichen namen für ihr objekt, um konflikte mit anderen benutzern zu vermeiden, und folgen sie dann diesen schritten 1\ erstellen sie ein objekt mit ihrem gewünschten namen 2\ überprüfen sie, ob das objekt mit ihrer \<font color="#2166ae">read\</font> funktion erstellt wurde 3\ rufen sie ihre \<font color="#2166ae">readthenupdate\</font> funktion auf, die in diesem thema erstellt wurde, mit einem alter, das sich von dem ursprünglichen unterscheidet 4\ überprüfen sie, ob sich das alter des haustiers geändert hat, indem sie ihre \<font color="#2166ae">read\</font> funktion erneut aufrufen 5 löschen die \<font color="#2166ae">löschen\</font> funktion löscht ein haustier, das von der \<font color="#2166ae">lesen\</font> funktion empfangen wurde es ist eine irreversible aktion, was bedeutet, dass sie vorsichtig sein sollten, während sie sie verwenden, insbesondere weil ihre \<font color="#2166ae">lesen\</font> funktion möglicherweise mehr objekte zurückgibt, als sie tatsächlich löschen möchten aus diesem grund wird empfohlen, immer nur ein objekt auf einmal zu löschen die schritte zum schreiben ihrer eigenen \<font color="#2166ae">löschen\</font> funktion finden sie unten am ende des erfolgs ihrer “lesen” funktion ( \<font color="#2166ae">readthendelete\</font> , machen sie einen aufruf für die \<font color="#2166ae">löschen\</font> funktion in der \<font color="#2166ae">deletepet\</font> funktion rufen sie die zerstörungsmethode auf dem empfangenen objekt “foundpet” auf sie können die back4app javascript löschen funktion https //jsbin com/vubiqoq/edit?html,js,output öffnen, um den bereits implementierten code zu sehen hier ist der code für die \<font color="#2166ae">readthendelete\</font> funktion und \<font color="#2166ae">deletepet\</font> funktion delete js readthendelete(); function readthendelete() { query = new parse query(pet); query equalto("name", textname); query first() then(function (pet) { if (pet) { console log('pet found with name ' + pet get("name") + ' and age ' + pet get("agepet")); deletepet(pet); } else { console log("nothing found, please try again"); return null; } }) catch(function (error) { console log("error " + error code + " " + error message); return null; }); } function deletepet(foundpet) { foundpet destroy() then(function(response) { console log('pet '+ foundpet get("name") + ' erased successfully'); }) catch(function(response, error) { console log('error '+ error message); }); } um es zu testen, wird empfohlen, ein objekt mit einem ungewöhnlichen namen zu erstellen, genau wie die anderen funktionen, um konflikte mit objekten anderer benutzer zu vermeiden fügen sie einfach den code schnipsel in jsbin ein und führen sie den code mit dem namen ihres objekts und dem objekt aus, das gelöscht werden soll dann können sie ihre \<font color="#2166ae">read\</font> funktion aufrufen, um zu bestätigen, dass es keine objekte mit diesem namen gibt wenn die abfrage ein objekt zurückgibt, was sie nicht sollte, bedeutet das wahrscheinlich, dass sie mehr objekte mit dem gleichen namen haben und eines von ihnen zurückgegeben wurde, da die \<font color="#2166ae">delete\</font> funktion nur ein objekt löscht sie können ihr objekt überprüfen, indem sie auf ihr \<font color="#2166ae">parse dashboard\</font> zugreifen es ist erledigt! an diesem punkt haben sie gelernt, wie man die grundlegenden crud operationen mit javascript durchführt