重定向同时传递参数
- 论坛
- 重定向同时传递参数
14 浏览
重定向同时传递参数
在Flask中,我可以这样做:
render_template("foo.html", messages={'main':'hello'})
如果foo.html中包含{{ messages['main'] }}
,则页面将显示hello
。但如果有一个导致foo的路由:
@app.route("/foo") def do_foo(): # 在这里执行一些逻辑 return render_template("foo.html")
在这种情况下,如果我仍然想要发生那个逻辑,唯一的方法是通过redirect
来到达foo.html:
@app.route("/baz") def do_baz(): if some_condition: return render_template("baz.html") else: return redirect("/foo", messages={"main":"在页面baz上条件失败"}) # 上面会产生TypeError: redirect() got an unexpected keyword argument 'messages'
那么,我如何将那个messages
变量传递给foo
路由,以便在加载之前不必重写该路由计算的相同逻辑代码呢?