sql >> Database teknologi >  >> NoSQL >> MongoDB

Sådan bruger du mongoose Promise - mongo

I den nuværende version af Mongoose er exec() metoden returnerer et løfte, så du kan gøre følgende:

exports.process = function(r) {
    return Content.find({route: r}).exec();
}

Så, når du gerne vil have dataene, skal du gøre dem asynkrone:

app.use(function(req, res, next) {
     res.local('myStuff', myLib.process(req.path));
     res.local('myStuff')
         .then(function(doc) {  // <- this is the Promise interface.
             console.log(doc);
             next();
         }, function(err) {
             // handle error here.
         });
});

For mere information om løfter er der en vidunderlig artikel, som jeg for nylig læste:http://spion.github.io/posts/why-i-am-switching-to-promises.html



  1. MongoDB feltrækkefølge og dokumentpositionsændring efter opdatering

  2. Kan jeg indstille global TTL i redis?

  3. $lookup på ObjectId'er i et array

  4. Omdøb et felt i forespørgselsresultaterne i MongoDB