gpt4 book ai didi

python - 根据参数将 View 路由到另一个 URL

转载 作者:行者123 更新时间:2023-12-01 05:57:31 24 4
gpt4 key购买 nike

我有一个简单的 Flask 应用程序,其中包含一些基本 View 。这些 View 之一称为结果。它的作用是使用 GET 获取 URL 参数,然后使用这些参数执行一系列操作,最后使用 render_template() 渲染模板并将计算值传递给它。

渲染时,结果 URL 如下所示:

http://127.0.0.1:5000/result?s=abcd&t=wxyz

我想要做的不是在结果 View 下渲染模板,而是重定向到一个新 View (我们称之为最终 View ),将计算值与重定向一起传递,并从那里。为什么要做这一切?因为我希望最终 URL 看起来像这样:

http://127.0.0.1:5000/final/abcd

如果标题有点含糊,我很抱歉。

最佳答案

最简单的解决方案,最终URL中的“abcd”即可为实际结果:

@app.route("/result")
def calculate_result():
s, t = request.args.get("s"), request.args.get("t")
# Calculate result with s and t
return redirect(url_for(".display_results", result=result))

@app.route("/final/<result>")
def display_results(result):
return render_template("results.html", result=result)

如果不能,那么您可以使用session相反:

@app.route("/result")
def calculate_result():
s, t = request.args.get("s"), request.args.get("t")
# Calculate result with s and t
session["result"] = result
return redirect(url_for(".display_results", result=result))

@app.route("/final/abcd")
def display_results():
result = session.get("result")
return render_template("results.html", result=result)

关于python - 根据参数将 View 路由到另一个 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11803387/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com