В колбе я могу это сделать:
render_template("foo.html", messages={'main':'hello'})
И если foo.html содержит {{ messages['main'] }}
, страница покажет hello
. Но что, если есть маршрут, который приводит к foo:
@app.route("/foo")
def do_foo():
# do some logic here
return render_template("foo.html")
В этом случае единственный способ добраться до foo.html, если я хочу, чтобы эта логика произошла в любом случае, проходит через redirect
:
@app.route("/baz")
def do_baz():
if some_condition:
return render_template("baz.html")
else:
return redirect("/foo", messages={"main":"Condition failed on page baz"})
# above produces TypeError: redirect() got an unexpected keyword argument 'messages'
Итак, как мне получить эту переменную messages
, которая будет передана на маршрут foo
, так что мне не нужно просто переписывать тот же логический код, который этот маршрут вычисляет, прежде чем загружать его?