2

我正在尝试使用 MongoDB 和 Mongoose 为 REST 服务进行简单的分页。这就是我现在的做法。

如您所见,我在“下一个”变量上发送 0,但我只想在没有更多结果时发送零。当结果结束并且没有更多可以得到时,我怎么能得到?

   var user = User.find(
    {},
    {},
    {skip: skip, limit: limit},
    function(err, docs) {
        if (!err) {
            res.json({users: docs, next: 0} );
        } else {
            throw err;
        }
    });

谢谢!

PS:我正在使用 node.js 和 express。

4

2 回答 2

0

如果我的问题正确,您想发送剩余文档的数量以进行下一次查询,如果是这样,您可以使用 limit * 2 进行查询,但只返回“限制”文档,从 docs.length 中减去限制,您将获得数量下一个查询的剩余文档。

使用更高级的查询可能会有更好的解决方案。

于 2012-09-28T19:24:20.283 回答
0

尝试这个:

if ( !docs ) {
  res.json({users: [], next: 0});
}
于 2012-09-28T19:02:27.203 回答