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

Come usare la mangusta Promise - mongo

Nella versione corrente di Mongoose, exec() restituisce una Promessa, quindi puoi fare quanto segue:

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

Quindi, quando desideri ottenere i dati, dovresti renderli asincroni:

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.
         });
});

Per ulteriori informazioni sulle promesse, c'è un articolo meraviglioso che ho letto di recente:http://spion.github.io/posts/why-i-am-switching-to-promises.html