Python中的Flask分页帮助

Python中的Flask分页帮助,python,mysql,flask,pagination,Python,Mysql,Flask,Pagination,我正在尝试在HTML中创建一个按钮,单击该按钮时,该按钮将转到下一页/上一页。我尝试过分页和peewee,但似乎没有成功 这是我的应用程序: from flask import Flask,render_template, request, json from flask_mysqldb import MySQL app = Flask(__name__) app.config['MYSQL_HOST'] = 'example' app.config['MYSQL_USER'] = 'examp

我正在尝试在HTML中创建一个按钮,单击该按钮时,该按钮将转到下一页/上一页。我尝试过分页和peewee,但似乎没有成功

这是我的应用程序:

from flask import Flask,render_template, request, json
from flask_mysqldb import MySQL
app = Flask(__name__)
app.config['MYSQL_HOST'] = 'example'
app.config['MYSQL_USER'] = 'example'
app.config['MYSQL_PASSWORD'] = 'example'
app.config['MYSQL_DB'] = 'fund_raiser'
mysql = MySQL(app)

@app.route('/funds/pages/', defaults={'page':0})
@app.route('/funds/pages/<int:page>')
def fund_pages(page):
    perpage = 5
    first_page = page*perpage
    cur = mysql.connection.cursor()
    cur.execute("select * from fund_table limit "+str(first_page)+", "+str(perpage)+";", mysql.connection.commit())
    data = cur.fetchall()
    return render_template('funds.html', data=data)

在我的html页面中哪里添加href标记?要使用的正确变量是什么?

使用url\u for函数非常简单。 您可以为路由调用函数名,并向其传递一个变量

href={{url\u代表“基金”页面,page=page\u num}

其中page_num是页码

要动态获取页码,可以简单地从当前页码中添加或减去1。例如,您可以存储page\u prev=current\u page-1和page\u next=current\u page+1

您可以将这些变量作为页面参数传递给url_函数

例如:

# in fund_pages()
prev_page = page - 1
next_page = page + 1
return render_template('template.hmtl', next_page=next_page, prev_page=prev_page)

# in the template
<a href="{{ url_for('fund_pages', page=prev_page) }}">Previous</a>
<a href="{{ url_for('fund_pages', page=next_page) }}">Next</a>

使用url_函数很容易做到这一点。 您可以为路由调用函数名,并向其传递一个变量

href={{url\u代表“基金”页面,page=page\u num}

其中page_num是页码

要动态获取页码,可以简单地从当前页码中添加或减去1。例如,您可以存储page\u prev=current\u page-1和page\u next=current\u page+1

您可以将这些变量作为页面参数传递给url_函数

例如:

# in fund_pages()
prev_page = page - 1
next_page = page + 1
return render_template('template.hmtl', next_page=next_page, prev_page=prev_page)

# in the template
<a href="{{ url_for('fund_pages', page=prev_page) }}">Previous</a>
<a href="{{ url_for('fund_pages', page=next_page) }}">Next</a>

我应该修改app.py文件中的某些内容吗?因为那个代码对我不起作用。它给了我一个统一的变量。@xiholac761您能发布完整的错误消息吗?jinja2.exceptions.UndefinedError UndefinedError:“page_num”是undefined@xiholac761是的,这就是我用作您要将用户重定向到的页码占位符的变量。对于第1页,请使用page=1等@xiholac761我已对文章进行了修改,以获得更好的示例。我是否应该修改app.py文件中的某些内容?因为那个代码对我不起作用。它给了我一个统一的变量。@xiholac761您能发布完整的错误消息吗?jinja2.exceptions.UndefinedError UndefinedError:“page_num”是undefined@xiholac761是的,这就是我用作您要将用户重定向到的页码占位符的变量。对于第1页,请使用page=1等@xiholac761我在文章中添加了一个更好的示例。这很容易受到sql注入的攻击。请不要从用户获取数据并将其直接发送到数据库。这容易受到sql注入的攻击。请不要从用户处获取数据并将其直接发送到您的数据库。