Flask-Bootstrap render_pagination()未更改为活动页面[重复]
Posted
技术标签:
【中文标题】Flask-Bootstrap render_pagination()未更改为活动页面[重复]【英文标题】:Flask-Bootstrap render_pagination() not changing to active page [duplicate] 【发布时间】:2018-02-11 10:36:10 【问题描述】:我正在使用 Flask-Bootstrap 的 render_pagination
宏。当我单击页码时,它会将 URL 更改为具有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)
【问题讨论】:
【参考方案1】:Flask-Bootstrap 只处理前端,需要在后端实现分页。它在更改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)
【讨论】:
以上是关于Flask-Bootstrap render_pagination()未更改为活动页面[重复]的主要内容,如果未能解决你的问题,请参考以下文章