I want to fetch multiple result from MongoDB based on the some keys.
Below is my code:
router.get('/',function(req, res, next) {
var movie = movieModel.find({category:"movies"});
var sports = movieModel.find({category:"sports"});
var news = movieModel.find({category:"news"});
var cartoon = movieModel.find({category:"cartoons"});
var moviesData;
var sportsData;
var newsData;
var cartoonData;
movie.exec(function(err,data){
if(err) throw err;
console.log(data);
moviesData = data;
});
sports.exec(function(err,data){
if(err) throw err;
else {
sportsData = data;
}
})
news.exec(function(err,data){
if(err) throw err;
else {
newsData = data;
}
})
cartoon.exec(function(err,data){
if(err) throw err;
else{
cartoonData = data;
}
})
console.log(moviesData); // line 1
console.log(sportsData);// line 2
console.log(newsData);// line 3
console.log(cartoonData);// line 4
res.render('home', {admin:false,data:moviesData });
});
Here when I console the data inside the function (name.exec()) then it shows correct output , but when I console outside (like in line 1,line 2,line 3,line 4) it shows undefined.