Flak的分页器的使用

分页显示

方法:paginate,分页查询
	参数:
      	page:当前的页码
      	per_page:每页的条数
      	error_out:当查询出错时是否报错
	返回值:
	 	Pagination:分页对象,包含了所有的分页信息
Pagination:
	属性:
		page:当前页码
		per_page:每页的条数,默认为20条
		pages:总页数
		total:总条数
		prev_num:上一页的页码
		next_num:下一页的页码
		has_prev:是否有上一页
		has_next:是否有下一页
		items:当前页的数据
	方法:
		iter_pages:返回一个迭代器,在分页导航条上显示的页码列表,显示不完的时返回None
		prev:上一页的分页对象
		next:下一页的分页对象
  • 封装分页显示的宏

    {% macro show_pagination(pagination, endpoint) %}
        <nav aria-label="Page navigation">
            <ul class="pagination">
                {# 上一页 #}
                <li {% if not pagination.has_prev %}class="disabled"{% endif %}>
                    <a href="{% if pagination.has_prev %}{{ url_for(endpoint, page=pagination.prev_num, **kwargs) }}{% else %}#{% endif %}" aria-label="Previous">
                        <span aria-hidden="true">&laquo;</span>
                    </a>
                </li>
    
                {# 中间页码 #}
                {% for p in pagination.iter_pages() %}
                    {% if p %}
                        <li {% if pagination.page == p %}class="active"{% endif %}><a href="{{ url_for(endpoint, page=p, **kwargs) }}">{{ p }}</a></li>
                    {% else %}
                        <li><a href="#">&hellip;</a></li>
                    {% endif %}
                {% endfor %}
    
                {# 下一页 #}
                <li {% if not pagination.has_next %}class="disabled"{% endif %}>
                    <a href="{% if pagination.has_next %}{{ url_for(endpoint, page=pagination.next_num, **kwargs) }}{% else %}#{% endif %}" aria-label="Next">
                        <span aria-hidden="true">&raquo;</span>
                    </a>
                </li>
            </ul>
        </nav>
    {% endmacro %}
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值