MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Mongoose mehrfache synchrone Suche zur Wiederverwendung der Objekt-ID

Sie können jedes findOne umschließen Funktion in das Promise und verwenden Sie await von Babel. In diesem Fall könnte Ihr Code so aussehen:

let office = await new Promise((resolve, reject) => {
    Office.findOne({ geolocation: origin._id}, function(err, office){
        if (err) reject(err)
        resolve(office)
});

let company = await new Promise((resolve, reject) => {
    Company.findOne({ _id: office.company }, function(err, company){
        if (err) reject(err)
        resolve(company)
});
... and so on

Oder vielleicht möchten Sie mehr über Bevölkerung in MongoDB lesen:http://mongoosejs.com/docs/populate .html