node.js - Return data from mongoDB nested queries -


what method return data nested queries.

im merging multiple function calls 1 single module , have following code

  retrievestudentsessions: function(req, res, callback){      mongoclient.connect(config.mongopath+config.dbname, function(err, db) {        if(err){          return callback(new error("unable connect db"));        }       var collection        = db.collection(config.userlist);       var sessioncollection = db.collection(config.session);       var templatecollection = db.collection(config.template);       var tempsession  = {session:[], templates:[]};        //obtain userid       collection.find({'email' : req.user['_json'].email}).nextobject(function(err, doc) {           if(err){                 return callback(new error("error finding user in db"));           }            //search session collection userid             sessioncollection.find({ $or : [{'studentsb' : doc['userid']},{'studentsa' : doc['userid']}]}).each(function(err, doc) {               if(err){                   return callback(new error("error finding user in db"));               }                     //update json                   tempsession.session.push(doc);                   //query template title using template id session collection                   templatecollection.find({'_id' : doc['templateid']}).nextobject(function(err, doc){                     if(err){                           return callback(new error("error finding user in db"));                     }                      //update json                     tempsession.templates.push(doc);                   });             });         return callback(null, tempsession);       });     });   } 

caller function

dbcall.retrievestudentsessions(req, res, function(err, result){                 if(err){                     console.log(err);                     return;                 }                 console.log(result);             }); 

above code returns error undefined not function when try return variable tempsession. same works fine single queries . there specific method of return, when comes nested queries?


Comments