0

我正在使用 Flask-Bootstrap 的render_pagination宏。当我点击页码时,它会更改 URL 为 have page=2,但是当页面重新渲染时,结果和页面仍然是第 1 页。使用时如何更改页面和结果render_pagination

@app.route('/results')
def results(filename, page=1):
    logs = Logs.query.paginate(page)
    return render_template('results.html', logs=logs)
{% from "bootstrap/pagination.html" import render_pagination %}

{% for log in logs.items %}
    {{ log }}
{% endfor %}

{{ render_pagination(logs) }}
4

1 回答 1

1

Flask-Bootstrap 只处理前端,需要在后端实现分页。page它在更改查询参数时呈现指向当前视图的链接。您需要从request.args视图中访问此 arg 并在对查询进行分页时使用它,方法是将其传递给query.paginate.

from flask import request

@app.route('/results')
def results():
    page = request.args.get('page', 1)
    query_results = Episodes.query.paginate(page=page)
    return render_template('results.html', query_results=query_results)
于 2017-09-08T14:53:10.407 回答