2010-10-04 7 views
2

Y at-il de toute façon de faire quelque chose comme:stocker une mangouste (Node.js ORM) résultat de la requête

var first_user = User.find({ _id: user_id }).first(); 

utilisant le mangouste ORM? Ce que j'essaie de faire est de stocker le résultat retourné de la requête pour une utilisation ultérieure.

Lorsque j'utilise ce qui précède, tout ce que je suis retourné dans le var first_user est l'objet QueryWriter.

+0

Pouvez-vous simplement utiliser "findOne". Je ne suis pas totalement familier avec Mongoose, mais la fonction "findOne" est assez cohérente dans la plupart des pilotes. –

Répondre

3

Vous pouvez accéder aux résultats d'une requête mongoose via un rappel passé. Vous trouverez que mongoose, comme la plupart des modules node.js, utilise intensivement les callbacks asynchrones. Mongoose fournit également une méthode agréable pour retourner un objet par son identifiant, et si vous voulez utiliser ce résultat hors de la portée du rappel, vous pouvez le faire comme ceci:

var first_user; 
User.findById(user_id, function(user){ 
    first_user = user; 
}); 

Pour d'autres appels API mangouste, Je recommande de regarder les tests de mangouste pour une bonne référence. Check out http://github.com/LearnBoost/mongoose/blob/master/tests/integration/model.test.js

+0

Merci. Il m'est apparu après l'affichage que ma syntaxe désirée, si elle avait été disponible serait par nature bloc. – Bookworm

+0

Exactement à droite! :) – bxjx

Questions connexes