Python Flask-将变量从重定向传递到渲染模板

Python Flask-将变量从重定向传递到渲染模板,python,redirect,flask,Python,Redirect,Flask,我有一个关于重定向到呈现模板的函数的问题。我有两个职能: @user.route('/register', methods=['GET', 'POST']) def register(): if request.method == 'GET': return render_template('register.html') email = request.form['email'] if User.query.filter(User.email == em

我有一个关于重定向到呈现模板的函数的问题。我有两个职能:

@user.route('/register', methods=['GET', 'POST'])
def register():
    if request.method == 'GET':
        return render_template('register.html')
    email = request.form['email']
    if User.query.filter(User.email == email).first() is not None:
        flash('Account already exists for this email address!')
        return redirect(url_for('user.login'))

在第一个函数中,使用行
return redirect(url\u for('user.login'))
,我希望通过该重定向传递电子邮件变量,这样我就可以在第二个函数中的
render\u template
在HTML页面上显示该变量。我尝试了以下方法:

return redirect(url_for('user.login', defaultEmail=email))
在第一个函数和

return render_template('login.html', defaultEmail=email))

但它给了我
名称错误:没有定义全局名称“email”
。我该怎么做呢?

url\u应该通过查询字符串传递
电子邮件。它可以通过
login
作为
request.args
的一部分进行访问

email = request.args.get('defaultEmail')

太好了,非常感谢!在我的jinja模板中,我检查了
{%if defaultEmail%}
以查看该变量是否存在,然后将其加载到我的模板中。
email = request.args.get('defaultEmail')