找回密码
 立即注册
首页 python Python-Web 查看内容
一个用起来超级爽的flask_paginate 分页模块
爽不爽用用才知道.
此模块需要安装:
pip3 install flask-paginate  python3安装
使用方法:
from flask_paginate import Pagination,get_page_parameter

@bp.route('/')
def frontIndex():
    page = request.args.get(get_page_parameter(),type=int,default=1)  #利用get_page_parameter() 获取到参数名 
    start = (page-1) * config.POST_LIST_NUM   #config.APP_LIST_NUM 是显示条数,此参数是开始搜索值
    end = start + config.POST_LIST_NUM #结束搜索值
    posts = PostModel.query.order_by(PostModel.create_time.desc()).slice(start,end).all()  #使用sqlalchemy 模型搜索帖子
    pagination = Pagination(bs_version=3,page=page,total=PostModel.query.count(),outer_window=0,inner_window=1)  #生成一个分页对象传送给前端
    content = {'posts':posts, 'pagination':pagination}

    return render_template('fronts/front_index.html',**content)

Pagination 常用参数展示:
  • bs_version = 3  :指定bootcss 版本号
  • total = PostModel.query.count() :指定一共分页条数
  • outer_window = 0 :,指定分页前后显示条数
  • inner_window = 1 :指定分页中间显示条数
  • per_page = 10 每页的显示条数,默认为10
  • prev_label:上一页的文字,默认为'«'
  • next_label:下一页的文字,默认为'»'
  • link_size:页面链接的字体大小
  • alignment:分页链接的对齐方式

详细参数请移步官方文档:https://pythonhosted.org/Flask-paginate/
接下来是在html调用:
在模板中引用
<div style="text-align:center;">
     {{ pagination.links }}
</div>

就是这么简单.不用再苦逼的做样式写分页了!




分享至 : QQ空间
收藏
您需要登录后才可以回帖 登录 | 立即注册