sql >> Database >  >> NoSQL >> MongoDB

Een Mongoose seeding-script omzetten in een belofte

Probeer het alstublieft te doen via new Promise en Promise.all

new Promise om een ​​nieuwe belofte te creëren. De doorgegeven functie krijgt de functies Oplossen en Afwijzen als argumenten die kunnen worden aangeroepen om het lot van de gecreëerde belofte te bezegelen.

Promise.all is handig als u op meer dan één belofte wilt wachten om te voltooien.

var bookOps = [];

books.forEach(function (book) {
    bookOps.push(saveBookAsync(book));
});

Promise.all(bookOps).then(function() {
   bookshelfConn.close(function () {
      console.log('Mongoose connection closed!');
    });
});

function saveBookAsync(book) {
    return new Promise(function(resolve, reject) {
        new Book(book).save(function(err) {
            if (err)
                reject(err);
            else
                resolve();
        })
    });
}



  1. MongoDB:update alleen specifieke velden

  2. Kan mongodb niet opnieuw opstarten op Ubuntu 11.04

  3. hoe vind je een duidelijk veld van een model op een toestand in mangoest?

  4. MongoDB $indexOfBytes