前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >flask 分页pagination(flask 62)

flask 分页pagination(flask 62)

作者头像
用户5760343
发布2019-08-14 16:35:33
1.1K0
发布2019-08-14 16:35:33
举报
文章被收录于专栏:sktjsktj

视图函数:

@app.route('/') @login_required def index(): page=request.args.get('page',1,type=int) pagination=User.query.order_by(User.createTime.desc()).paginate(page,per_page=12,error_out=False) users=pagination.items return render_template('index.html', name=current_user.username,users=users,pagination=pagination)

pagination对象的方法属性:

items 记录 query 分页的查询源 page 当前页数 prev_num next_num has_next has_prev pages 总页数 per_page 每页的记录数量 total 总记录数

image.png

自定义分页的宏,以及引用

{% macro pagination_widget(pagination, endpoint) %} <ul class="pagination"> <li{% if not pagination.has_prev %} class="disabled"{% endif %}> <a href="{% if pagination.has_prev %}{{ url_for(endpoint,page = pagination.page - 1, **kwargs) }} {% else %}#{% endif %}">« </a> </li> {% for p in pagination.iter_pages() %} {% if p %} {% if p == pagination.page %} <li class="active"> <a href="{{ url_for(endpoint, page = p, **kwargs) }}">{{ p }}</a> </li> {% else %} <li> <a href="{{ url_for(endpoint, page = p, **kwargs) }}">{{ p }}</a> </li> {% endif %} {% else %} <li class="disabled"> <a href="#">…</a> </li> {% endif %} {% endfor %} <li{% if not pagination.has_next %} class="disabled"{% endif %}> <a href="{% if pagination.has_next %}{{ url_for(endpoint,page = pagination.page + 1, **kwargs) }}{% else %}#{% endif %}">»</a> </li> </ul> {% endmacro %}

{% import "_macros.html" as macros %} ..........其他代码省略........... {%if pagination%} <div class="pagination"> {{ macros.pagination_widget(pagination, '.index') }} </div> {% endif %}

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.08.12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 视图函数:
  • pagination对象的方法属性:
  • 自定义分页的宏,以及引用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档