flask中的分页器 paginate()

paginate(参数1,参数2,参数3)

参数1:当前页码(page)
参数2:每页显示的信息数量(per_page)
参数3:error_out:error_out= False 的情况下不会抛出异常如果error_out = True 则下面几种情况会抛出404异常:找不到项目,并且page不是 page小于1,或者per_page为负数 page或per_page不是整数 page大于总页数;

忘了说了,paginate() 分页查询,返回一个分页对象

@app.route(’/booklist/’, methods=[‘GET’, ‘POST’])
def student_list():
page = int(request.args.get(‘page’, 1)) # 当前页数,request.args.get()方法获取页面的参数,如果没有获取到页码就默认为1
per_page = 3 # 每页数量
paginate = Student.query.paginate(page, per_page, error_out=False) # 创建分页器对象
return render_template(‘路由_paginate.html’, paginate= paginate)

属性:

items : 表示获得的查询结果
pages : 表示一共有多少页
page :获得当前页码数
total :数据总条数
has_prev: 是否有上一页
has_next: 是否有下一页
prev_num:上一页页码
next_num:下一页页码
iter_page():当前页的页码列表

books{% for stu in paginate.items %} {% endfor %} {​{ paginate.pages }} {​{ paginate.total }} {​{ paginate.page }} 首页 {% if paginate.has_prev %} 上一页 {% endif %} {% if paginate.has_next %} 下一页 {% endif %} 尾页 页码: {% for i in paginate.iter_pages() %} {{ i }} {% endfor %}
编号姓名性别专业电话邮箱操作
{{ stu.id }}{{ stu.s_name }}{{ stu.s_gender|sg }}{{ stu.s_subject }}{{ stu.s_phone }}{{ stu.s_email }}修改 删除

在这里插入图片描述


版权声明:本文为kingEricbboy原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。