fastapi mongodb如何添加分页并限制每页的项目数



我正在使用pymongo。Category.city_collection.find()获取所有结果集合。但我想每页只显示5个结果。我试过这个Category.city_collection.find().limit(5),它在第一页上显示了5个结果,但如何进入其他页面,如第二页、第三页等?我在我的fastapi项目中使用mongodb。这是我的完整代码

@router.get('/all_city')
async def all_city():

all_category = Category.city_collection.find() 
category = convert_json(all_category)
return category

您需要使用skiplimit

使用skip,可以设置要跳过的文档数。

通过限制,您可以设置页面大小。

示例:

db.test.find({}).skip(10).limit(10)

将返回10个文档页面大小的第2页。

skip(20).limit(10)会返回第3页。。。

大多数情况下,您应该在有序数据上使用此方法。

最新更新