首页 > 后端开发 > Python教程 > 如何在 Flask 应用程序的页面之间传递变量?

如何在 Flask 应用程序的页面之间传递变量?

Susan Sarandon
发布: 2024-12-08 03:00:11
原创
371 人浏览过

How Can I Pass Variables Between Pages in a Flask Application?

Flask 页面之间传递变量

在 Flask 中,页面之间传递变量可以通过多种方式实现,包括会话、查询参数、看法args.

会话

会话提供了一种简单的方法来存储 Python 值以供以后检索。它们的行为就像一个持久字典,可以承受多个请求。要使用会话,只需为“会话”字典分配一个变量即可:

1

2

3

4

@app.route('/a')

def a():

    session['my_var'] = 'my_value'

    return redirect(url_for('b'))

登录后复制

在后续页面中,可以按如下方式访问该值:

1

2

3

4

@app.route('/b')

def b():

    my_var = session.get('my_var', None)

    return my_var

登录后复制

查询参数

查询参数允许您将数据从模板 URL 直接传递到页面处理程序。这对于传递不需要为后续请求保留的少量数据非常有用。要使用查询参数,请将参数名称和值附加到模板中的 URL:

1

<a href="{{ url_for('b', my_var='my_value') }}">Send my_value</a>

登录后复制

这将生成类似 /b?my_var=my_value 的 URL,可以在页面处理程序中访问该 URL,如下所示:

1

2

3

@app.route('/b')

def b():

    my_var = request.args.get('my_var', None)

登录后复制

查看参数

查看参数提供了一种方法将数据从 URL 直接传递到视图函数中。这与查询参数类似,但数据不会在 URL 中公开。要使用视图参数,请使用预期的参数类型注释路由函数:

1

2

3

@app.route('/b/<my_var>')

def b(my_var):

    # Use 'my_var' in your view function

登录后复制

请注意,视图参数不能用于传递任意数据,因为它们是带类型注释的。

以上是如何在 Flask 应用程序的页面之间传递变量?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板