flask中 不同的两个路由之间怎么相互传递数据
比如A路由中的a变量获取的数据 怎么传递到B路由中的b变量.

关于#flask#的问题:flask中 不同的两个路由之间怎么相互传递数据比如A路由中的a变量获取的数据 怎么传递到B路由中的b变量.
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- 社区专家-Monster-XH 2023-03-12 12:55关注
基于Monster 组和GPT的调写:
在一个路由中将需要传递的数据存储在会话中,然后在另一个路由中读取该数据。例如,假设在 A 路由中有一个变量 a,我们想把它传递到 B 路由中的变量 b 中。我们可以在 A 路由中将 a 存储在会话中,然后在 B 路由中读取会话中存储的值,并将其赋值给 b。
下面是一个简单的示例代码:
from flask import Flask, session, redirect, url_for, request app = Flask(__name__) app.secret_key = 'my_secret_key' @app.route('/set_a') def set_a(): session['a'] = request.args.get('a') return redirect(url_for('get_b')) @app.route('/get_b') def get_b(): a = session.get('a') b = int(a) * 2 # 假设想把 a 乘以 2 传递到 b 中 return 'b: {}'.format(b)
set_a 路由将参数 a 存储在会话中,然后重定向到 get_b 路由。get_b 路由从会话中获取 a 的值,并将其乘以 2 赋值给变量 b,最后返回 b 的值。
注意,在使用会话传递数据时,需要为应用设置一个密钥(即上面代码中的 app.secret_key),以确保会话数据的安全性。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用