Natywny sterownik MongoDB dla węzła jest zgodny z konwencją Node.js dla funkcji asynchronicznych, a mianowicie, że każda metoda otrzymuje funkcję wywołania zwrotnego jako ostatni parametr. Więc zamiast db.collection.find(query).count()
, twoja funkcja powinna zostać przepisana jako:
db.collection.find(query).count( function(err, count){ // do stuff here }
Parametr count
przechwytuje wynik zapytania.
Możesz również uprościć funkcję do db.collection.count(query, function(err, count){}
.
Twoja funkcja wstawiania powinna również być zgodna z tą samą konwencją, używając funkcji zwrotnej w postaci function(err, res){}
jako ostatni parametr.
Polecam zapoznać się z MongoDB Native Driver Docs aby uzyskać więcej informacji.
Zmieniono, aby dać przykład w CoffeeScript: Oto funkcja przepisana za pomocą składni CoffeeScript.
db.Event.count(eventobj, (err, count) ->
// do stuff