我正试图在Swift for iOS中使用MongoDB Stitch实现分页,但我在文档中没有看到skip
。
RemoteFindOptions
有排序和限制,但没有像这样的跳过:
{
"projection": <document>,
"sort": <document>,
"limit": <integer>
}
没有办法用mongodb stitch为iOS实现skip
吗?
是否没有办法在iOS上使用mongodb stitch实现skip?
对于分页,您可以创建一个Stitch函数,该函数使用limit
返回有限数量的结果。
本质上执行与以下类似的操作:
db.collection.find({ "_id": 100 })
.sort({ _id: 1 })
.limit(50)
上面的示例片段显示了一个50的分页示例。在客户端,确保记录最后一个_id
,这样您就可以执行另一个分页请求。即
db.collection.find({ "_id": 150 })
.sort({ _id: 1 })
.limit(50)
另请参阅:
- 博客:分页与桶模式
- cursor.skip((:使用范围查询进行分页
您可以使用aggregate
而不是find
。例如:
myCollection.aggregate([
{ $sort: { createdAt: -1 } },
{ $skip: 10 },
{ $limit: 10 }
]).toArray()