stocker un résultat de la requête mangouste (Node.js ORM)
Question
Y at-il de toute façon de faire quelque chose comme:
var first_user = User.find({ _id: user_id }).first();
en utilisant mangouste ORM? http://github.com/LearnBoost/mongoose
Ce que je suis en train de faire est de stocker le résultat renvoyé de la requête pour une utilisation ultérieure.
Quand j'utilise ce qui précède, tout ce que je me retourne dans le var first_user
est le QueryWriter objet.
La solution
Vous pouvez accéder aux résultats d'une requête mangouste par un rappel passé. Vous constaterez que la mangouste, comme la plupart des modules de Node.js, fait un usage intensif de callbacks async. 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 les autres appels API mangouste, je vous recommande de regarder les tests de mangouste pour une bonne référence. Consultez http://github.com/LearnBoost/mongoose /blob/master/tests/integration/model.test.js