How can I pass arguments into redirect(url_for()) of Flask? How can I pass arguments into redirect(url_for()) of Flask? flask flask

How can I pass arguments into redirect(url_for()) of Flask?


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>')def found(email, listOfObjects):  return render_template("found.html",      keys=email, obj=listOfObjects)

Alternatively:

@app.route('/found')def found():  return render_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.