
SQLAlchemy.order_by.paginate(page=1,per_page=3)paginate后类型是flask_sqlalchemy.Pagination要获得信息,查了之后paginate要.items,才是平时的信息data2 = data.items平时的信息、分页要分别传过去模板return data2=data2,paginate=paginate可以列表传过去
{%import "hong.html" as pg%}{{pg.my_paginage(pagination,"app.art_list")}}
my_paginage是一个命名
pagination是数据:可以是paginate或者paginate.items格式
art_list是准备后面构造url_for方法的,app是蓝图名、art_list是方法名
{%macro my_paginate1(pagination1, url)%}{% for a in pagination1.items %}<td>{{a.nickname}}</td>{% endfor %}<nav><ul class="pagination1">{%if pagination1.has_prev%}<li class="page-item active"><a class="page-link"href="{{url_for(url, page2=pagination1.page-1)}}">上一页</a></li>{%else%}<li class="page-item disabled"><a class="page-link" href="#">上一页</a></li>{%endif%}{%for page in pagination1.iter_pages(1,1,3,1)%}{%if page%}<li class="page-item {%if page==pagination1.page%}active{%endif%}"><a class="page-link"href="{{url_for(url, page2=page)}}">{{page}}</a></li>{%else%}<li class="page-item disabled"><a class="page-link" href="#">…</a></li>{%endif%}{%endfor%}{%if pagination1.has_next%}<li class="page-item active"><a class="page-link"href="{{url_for(url, page2=pagination1.page+1)}}">下一页</a></li>{%else%}<li class="page-item disabled"><a class="page-link" href="#">下一页</a></li>{%endif%}</ul></nav>{%endmacro%}
pagination1.items内容
pagination1.has_prev的has_prev 是否有上一页 True/False
pagination1.has_next的has_next 是否有下一页 True/False
items 当前页面中的所有记录(比如当前页上有5条记录,items就是以列表形式组织这5个记录)
query 当前页的query对象(通过query对象调用paginate方法获得的Pagination对象)
page 当前页码(比如当前页是第5页,返回5)
prev_num 上一页页码
next_num 下一页页码
has_next 是否有下一页 True/False
has_prev 是否有上一页 True/False
pages 查询得到的总页数 per_page 每页显示的记录条数
total 总的记录条数
iter_page(1,1,3,1)当前页是第4页,[1,None,3,4,5,6,None,9]