其实在使用中sqlalchemy和flask-sqlalchemy还是有点区别的的,sqlalchemy中使用query查询,而flask-sqlalchemy中使用basequery查询,他们是子类与父类的关系,flask-sqlalchemy中分页写的很明白了,但是对于我这种认识英文,又不能很好的理解英文的人来说,看文档还很吃力,这里记录一下。
这是文档地址:http://pythonhosted.org/Flask-SQLAlchemy/api.html#utilities
具体的使用方法:
paginate = User.query.paginate(page, POSTS_PER_PAGE, False)
object_list = paginate.items
return render_template('simplecd_list.html',pagination = paginate,object_list = object_list)
User是我的model,page是显示的第几页页数,POSTS_PER_PAGE每页显示多少条,paginate.items才是分页好的数据,下面是一个分页导航的例子:
<div class="pagination ">
<div class="row-fluid">
<div class="span3 offset2">
{% if pagination.has_prev %}
<a href="/index/{{ pagination.prev_num }}">previous</a>
{% endif %}
</div>
<div class="span3 ">
<a href="">Page {{ pagination.page }} of {{ pagination.pages }}.</a>
</div>
<div class="span3 ">
{% if pagination.has_next %}
<a href="/index/{{ pagination.next_num }}">next</a>
{% endif %}
</div>
</div>
</div>