首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用mongoose进行分页

如何使用mongoose进行分页
EN

Stack Overflow用户
提问于 2012-09-22 17:34:26
回答 5查看 18.7K关注 0票数 11

我想在我的收藏中添加一个分页功能。如何在一次查询中找到具有‘开始’和‘限制’位置的单据,并获得总单据数量?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-09-22 21:27:13

您不能在一个查询中同时获得两个结果;最好的做法是使用一个Mongoose Query对象同时获得这两个结果:

代码语言:javascript
复制
var query = MyModel.find({});
query.count(function(err, count) {...});
query.skip(5).limit(10).exec('find', function(err, items) {...});

如果需要,可以使用像async这样的流控制框架来干净地并行执行它们。

票数 19
EN

Stack Overflow用户

发布于 2016-03-13 02:35:39

您可以使用插件Mongoose Paginate

代码语言:javascript
复制
$ npm install mongoose-paginate

在您的路由或控制器中之后,只需添加:

代码语言:javascript
复制
Model.paginate({}, { page: 3, limit: 10 }, function(err, result) {
    // result.docs 
    // result.total 
    // result.limit - 10 
    // result.page - 3 
    // result.pages 
});
票数 9
EN

Stack Overflow用户

发布于 2012-09-22 21:59:14

如果你计划有很多页面,你不应该使用跳过/限制,而应该使用计算范围。

请看斯科特对类似问题的回答:MongoDB - paging

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12542620

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档