Flask-Bootstrap render_pagination()不会更改为活动页面
问题描述:
我正在使用Flask-Bootstrap的render_pagination
宏。当我点击页码时,它将URL更改为page=2
,但当页面重新呈现时,结果和页面仍然是第1页。如何在使用render_pagination
时更改页面和结果?Flask-Bootstrap 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) }}
答
瓶,引导只与前端交易,你需要实现后端分页。它在更改page
查询参数的同时呈现指向当前视图的链接。您需要在视图中从request.args
访问此参数,并在为查询分页时使用它,方法是将其传递到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)