flask sqlalchemy实现分页功能

接触到了一个新的实现分页的功能,记录下来

第一种方法:()

flask sqlalchemy里面包括分页查询首先记录一下此方法实现分页查询:

Post.query.paginate(1,10)    #第一个参数指示返回第几页的内容,第二页的参数表示每页展示的对象数量

Post.query.paginate(2,10)   #表示展示第二页数据,展示的对象是11~20个对象

不过,这种分页查询和.first(),.all()不同的是:它返回的是一个pagination对象

需要在前端页面中添加.items

  • has_next:如果在目前页后至少还有一页的话,返回 True   #注意:has_next和has_prev是判断前后两页是否有对象,结果是True和False
  • has_prev:如果在目前页之前至少还有一页的话,返回 True
  • next_num:下一页的页面数
  • prev_num:前一页的页面数
  • page.prev():返回上一页对象
  • page.next():返回下一页对象

自带的方法大概就是这样,下面记录一下第二种方法

示例代码如上所示:

解释一下:

reqparse模块是参数解析,对请求数据进行解析

首先我们看文档中的解释:reqparse.RequestParser()能够在单个请求的上下文中添加和解析多个参数。所以我们先要实例化一个对象,如上面代码:

pagination_arguments = reqparse.RequestParser()

然后添加属性的限制条件:
pagination_arguments.add_argument('page', type=int, required=False,default=1)

文档解释:从提供的请求中解析参数

然后就如代码喽!

 
 

猜你喜欢

转载自www.cnblogs.com/daqingzi/p/9083006.html