如何在mongoose查询中设置限制,偏移,跳过

时间:2016-09-27 07:49:25

标签: node.js express mongoose

我正在使用express,mongoose,node.so我已经检查了有关跳过和限制文档的查询。

if(modelList.get(position).getShowDownloadButton())
{
  btnDownload.setVisibility(View.VISIBLE)
}
else
{
  btnDownload.setVisibility(View.GONE)
}

3 个答案:

答案 0 :(得分:8)

不确定,但我认为这对你有帮助。

var perPage = 10
  , page = Math.max(0, req.param('page'))

Event.find()
    .select('name')
    .skip(perPage * page)
    .limit(perPage)
    .sort({
        name: 'asc'
    })
    .exec(function(err, events) {
        Event.count().exec(function(err, count) {
            res.render('events', {
                events: events,
                page: page,
                pages: count / perPage
            })
        })
    })

或参见

How to paginate with Mongoose in Node.js?

答案 1 :(得分:3)

var query = Model.find({}).skip(2).limit(5)
query.exec(callback);

callback

中编写代码
query.exec(function(err,data){
   //console.log(data)
});

您还可以执行更多此类查询

Model
.where('field1').gte(25)
.where().in([])
.select('field1', 'field2', 'field13')
.skip(20)
.limit(10)
.asc('field1')
.exec(callback);

您可以参考docs了解更多详情

答案 2 :(得分:1)

尝试一下

Model.find({},null,{limit:2,skip:20}).then(function(data){
       //console.log(data)
  }).catch(next);