Der MongoDB Native Driver for Node folgt der Node.js-Konvention für asynchrone Funktionen, nämlich dass jede Methode als letzten Parameter eine Callback-Funktion erhält. Also statt db.collection.find(query).count()
, sollte Ihre Funktion wie folgt umgeschrieben werden:
db.collection.find(query).count( function(err, count){ // do stuff here }
Der Parameter count
erfasst das Ergebnis Ihrer Abfrage.
Sie könnten die Funktion auch zu db.collection.count(query, function(err, count){}
vereinfachen .
Ihre Einfügefunktion sollte ebenfalls der gleichen Konvention folgen und eine Callback-Funktion in Form von function(err, res){}
verwenden als letzten Parameter.
Ich würde empfehlen, sich die MongoDB Native Driver Docs anzusehen für weitere Informationen.
Bearbeitet, um ein Beispiel in CoffeeScript zu geben: Hier ist die Funktion, die mit CoffeeScript-Syntax umgeschrieben wurde.
db.Event.count(eventobj, (err, count) ->
// do stuff