sql >> Database >  >> NoSQL >> MongoDB

Wijs het resultaat van de mangoestretour toe aan de js-variabele van het knooppunt

De callback van de findOne() is asynchroon, het wordt uitgevoerd nadat je de jade hebt weergegeven. De uitvoering springt naar "TrackSession" voordat de gebruikersvariabele een nieuwe waarde krijgt.

Je moet de var html =... in de callback plaatsen.

var user = null;
User.findOne({$and: [{"_id": advisorId}, {"role": "advisor"}]},{firstName:1,lastName:1, '_id':0}, function(err,userData,user) {
        user = userData;
        
        TrackSession.find({'advisor_id' : advisorId},fields,function(err, chatHistoryData) {
        var jade = require('jade');
        var html = jade.renderFile(appRoot+'/views/generatePDFHTML.jade', {'chatHistoryData': chatHistoryData,
            'selectedOptions':selectedOptions,
            'advisor':user,
            'tableHeaders':tableHeaders
        });
        console.log(html); return false;
    });
});



  1. MongoDB:Subdocument bijwerken

  2. Langzame zoekopdrachten analyseren in MongoDB

  3. Mongodb sorteren met hoofdletterongevoelige manier

  4. Mongoose Query:Zoek een element in een array