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

Nogle gange bliver data ikke vist i browseren

Den enkleste, men ANBEFALES IKKE måde at gøre, hvad du vil, ville være koden nedenfor, men det fører normalt til tilbagekaldshelvede eller Doomspyramide og det er svært at læse, så brug ikke dette !!!!

Comp.count({}, function(err, count){
   Comp.find({}).remove({}, function(){
      Comp.create(arr, function(err, docs){
         Comp.find({}, ..., function(err, doc){                
            Comp.findOne().skip(random).exec(function(err, result){
                res.render("index",{})
            })    
         }) 
      })
   })    
})

en anden måde kunne være at bruge async.js

async.series([
    function(callback){
        Comp.count({}, function(err, count){
            callback(null, count);
        });
    },
    function(callback){
        Comp.find({}).remove({}, function(){
            callback(null);
        });
    },
    function(callback){
        Comp.create(arr, function(err, docs){
            callback(null);
        });
    },
    function(callback){
        Comp.find({}, ..., function(err, doc){ 
            callback(null);
        });
    },
    function(callback){
        Comp.findOne().skip(random).exec(function(err, lastResult){
            callback(null, lastResult);
        });
    }
],
// optional callback, results is an array of results from each callback if any
function(err, results){
    // results is now equal to [count, lastResult]
    res.render("index",{})
});

og endelig lover Jeg har ikke prøvet eller brugt dette, så jeg er ikke 100 % sikker men sådan noget

var promise = Comp.count({}).exec();

promise.then(function(count) {
    return Comp.find({}).remove({}).exec();
})
.then(function() {
    return Comp.create(arr, ).remove({}).exec();
})
.then(function() {
    return Comp.find({}).remove({}).exec();
})
.then(function() {
    return Comp.find({}).skip(random).exec();
})
.then(function(result) {
    res.render("index",{})
})

Se her for nogle flere detaljer om løfter om mongoose Hvordan at bruge mongoose Promise - mongo




  1. .insertOne er ikke en funktion

  2. Mongodb unikt sparsomt indeks

  3. Node.js + MongoDB - findOne() returnerer et felt, der ikke virker

  4. spring mvc rest response json og xml