flask分页
views.py
from flask import Flask, request, render_template
from ..models import YourModel # 导入你的数据库对象
from . import your_app # 导入你的蓝本或app
from flask_paginate import Pagination, get_page_parameter
@your_app.route("/")
def index():
your_model = YourModel.query.order_by('id')
page = request.args.get(get_page_parameter(), type=int, default=1)
limit = 5
start = (page - 1) * limit
end = start + limit
res = your_model.slice(start, end) # 单页要展示的数据
pagination = Pagination(page=page, total=your_model.count(), bs_version=3, per_page=limit)
return render_template('index.html', pagination=pagination, res=res)
index.html
{% extends 'base.html' %}
{% block content %}
<table>
<thead>
<tr>
<th>...</th>
...
</tr>
</thead>
<tbody>
{% for r in res %}
<tr>
<td>{{ r.id }}</td>
...
</tr>
{% endfor %}
</tbody>
</table>
{{ pagination.links }}
{% endblock content %}