我有一個查詢可以獲取排行榜的前5位用戶。在robomongo這個查詢工作正常。將兩個查詢結果傳遞給響應
當我這樣做
var leaderboard = User.find({points: {$exists: true}}, {
"firstname": 1,
"lastname": 1,
"points": 1
}).sort({points : -1}).limit(5)
console.log('leaderboard');
我得到了很多無意義的JSON與[對象]幾乎無處不在。
我將如何執行這個查詢與貓鼬用+表示這樣我就可以通過該視圖的
firstname, lastname, points
,所以我可以循環它通過在視圖中的數組?
我完整的代碼是
app.get('/dashboard', function(req, res){
if (req.user) {
// logged in
User.find({}, function(err, docs) {
// console.log(docs);
});
// Get total points after submit
var leaderboard = User.find({points: {$exists: true}}, {
"firstname": 1,
"lastname": 1,
"points": 1
}).sort({points : -1}).limit(5).toArray();
console.log(leaderboard);
User.find({
points: {
$exists: true
}
}, function(err, docs) {
if(err){
console.log(err);
//do error handling
}
//if no error, get the count and render it
var count = 0;
for (var i = 0; i < docs.length; i++) {
count += docs[i].points;
}
var totalpoints = count;
res.render('dashboard', {
title: 'Dashboard',
user: req.user,
totalpoints: totalpoints
});
});
} else {
// not logged in
return res.redirect('/login');
}
});
就像你在後面的代碼做,你只能得到的結果在回調中。由於查詢尚未執行,「無意義的[Object]」實際上就是「遊標」定義。 –
是可以讓它在相同的回調查詢? – ServerSideSkittles