Heim >Backend-Entwicklung >Golang >Wie kann ich gespeicherte JavaScript-Funktionen in MongoDB verwenden, um Feldwerte dynamisch zuzuweisen?
Auswerten von JavaScript in MongoDB, um Feldwerte zuzuweisen
Das Einfügen von Dokumenten in eine MongoDB-Sammlung kann durch eine JavaScript-Auswertung erweitert werden, um Feldwerte dynamisch zuzuweisen. Der angegebene Code wertet die JavaScript-Anweisung jedoch zunächst nicht aus und speichert sie stattdessen als Skript.
Die MongoDB-Dokumentation beschreibt eine Methode zum serverseitigen Speichern von JavaScript-Funktionen in der system.js-Sammlung. Durch die Erstellung einer gespeicherten Funktion können wir JavaScript remote vom Go-Client aus auswerten.
Methode mit gespeicherten Funktionen:
db.system.js.insert({ _id: "assignDate", value: function() { return ISODate(); } });
func createInstance(c *mgo.Collection) { result, err := c.Run( bson.M{"eval": "assignDate()"}, ) checkError(err, "Could not get server time") var doc bson.M err = result.One(&doc) if err != nil { checkError(err, "Invalid result from stored function", 3) } lastSeen, ok := doc["retval"].(time.Time) if !ok { checkError(fmtErrorf("Invalid result from stored function: %v", doc["retval"]), "Invalid result from stored function: %v", 3) } // ... Insert document with evaluated field value }
Überlegungen:
Das obige ist der detaillierte Inhalt vonWie kann ich gespeicherte JavaScript-Funktionen in MongoDB verwenden, um Feldwerte dynamisch zuzuweisen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!