How Can I Pass Arguments Into Redirect(url_for()) Of Flask?
I'm trying to understand how best to redirect and pass arguments using Flask Below is my code, I'm finding that x and y are not making it into the template. Is my syntax correct? A
Solution 1:
The redirect is fine, the problem is with the found
route. You have several ways to pass values to an endpoint: either as part of the path, in URL parameters (for GET requests), or request body (for POST requests).
In other words, your code should look as follows:
@app.route('/found/<email>/<listOfObjects>')deffound(email, listOfObjects):
return render_template("found.html",
keys=email, obj=listOfObjects)
Alternatively:
@app.route('/found')
def found():
returnrender_template("found.html",
keys=request.args.get('email'), obj=request.args.get('listOfObjects'))
Also, your redirection should provide request parameters, not template parameters:
return redirect(url_for('found', email=x, listOfObjects=y))
Hope that helps.
Post a Comment for "How Can I Pass Arguments Into Redirect(url_for()) Of Flask?"