Es gibt einige Möglichkeiten, beliebigen Javascript-Code auf dem Server auszuführen. Sie können es als Zeichenfolge vom Client bereitstellen und zur Auswertung an den Server senden oder die Funktion zuerst auf dem Server installieren, wie hier dokumentiert:http://docs.mongodb.org/manual/core/server-side-javascript/
Serverseitige Funktionen werden pro Datenbank in einer Sammlung namens system.js.
registriertIn beiden Fällen können Sie dann den Befehl db.eval() verwenden, um Ihren Code aufzurufen, wie hier gezeigt:
/* Call like so:
evalJavascript(myDB, "function (oid) { return coll.find({_id: oid}); }", someObjectId)
*/
def evalJavascript(db:MongoDB, func: String, args: String*): Validation[String, Object] = {
val result = db.command(Map(
"eval" -> func,
"args" -> args.toList
));
if (result.ok) {
result.get("retval").success
} else {
result.getErrorMessage().failure
}
}