亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

mongoose如何取得全部結果數量并只提取部分結果

mongoose如何取得全部結果數量并只提取部分結果

一只名叫tom的貓 2019-04-16 20:27:14
如題,在跟著這個課程,寫一個博客系統,不過我想把里面用mongodb寫的部分改成mongoose的方法。取文章這里遇到了些問題,原文是這樣寫的。Post.getTen=function(name,page,callback){//打開數據庫mongodb.open(function(err,db){if(err){returncallback(err);}//讀取posts集合db.collection('posts',function(err,collection){if(err){mongodb.close();returncallback(err);}varquery={};if(name){query.name=name;}//使用count返回特定查詢的文檔數totalcollection.count(query,function(err,total){//根據query對象查詢,并跳過前(page-1)*10個結果,返回之后的10個結果collection.find(query,{skip:(page-1)*10,limit:10}).sort({time:-1}).toArray(function(err,docs){mongodb.close();if(err){returncallback(err);}//解析markdown為htmldocs.forEach(function(doc){doc.post=markdown.toHTML(doc.post);});callback(null,docs,total);});});});});};獲得總數是用來判斷是否為最后一頁的,但是我用mongoose寫的話不知道該如何獲取查詢到查詢結果的總數,寫到這樣不知道如何寫了Post.getFive=function(name,page,callback){varquerystr={};if(name){querystr.name=name;}varquery=Post.find(querystr).skip((page-1)*5).limit(5);query.sort({time:-1});query.exec(function(err,results){if(err){console.log(err);}else{results.forEach(function(doc){doc.post=markdown.toHTML(doc.post);});console.log(total);callback(null,results,total);}})}求大神指點下。。。
查看完整描述

2 回答

?
回首憶惘然

TA貢獻1847條經驗 獲得超11個贊

Mongoose里面是使用Model#count來獲得數量的??雌饋砟氵@里的Post應該就是個model吧,使用Post.count加上合適的條件就行了。
                            
查看完整回答
反對 回復 2019-04-16
  • 2 回答
  • 0 關注
  • 1264 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號