在电子邮件 link 中传递给 url_for 的变量不起作用
Variables passed to url_for within an email link not working
我正在为我的烧瓶应用程序设置注册功能。当用户请求注册时,我会向我的管理员帐户发送一封电子邮件,并希望批准或拒绝他们的请求。
当我发邮件的时候,注册表给的用户名,邮箱和密码都传入html,可以显示了。但是,当我尝试在使用 'url_for' 创建的 link 中移动这些变量时,它们是无法获得的。
这是我的管理员帐户收到的电子邮件:
<p>{{ form.username.data }} has requested registration authorization.</p>
<p> Their information is as follows,</p>
<p>Username: {{ form.username.data }}</p>
<p>Email: {{ form.email.data }}</p>
<p>Password: {{ form.password.data }}</p>
<p>
To register this user:
<a href="{{ url_for('auth.register_user', username=form.username.data,
email=form.email.data, password=form.password.data, _external=True) }}">
click here.
</a>
</p>
<p>-ADCo Inventory</p>
用户名、邮箱和密码都在这里正确显示。
这是 auth.register_user html,我只是暂时尝试显示用户名和密码,这是行不通的。
{% extends 'base.html.j2' %}
{% block content %}
<h2> Register {{ username }}</h2>
<h2>pass: {{ password }}</h2>
{% endblock %}
这里是auth.register_user的路线,如果有帮助的话:
@auth_bp.route('/register_user', methods=['GET', 'POST'])
def register_user():
form = RegistrationForm()
return render_template('register_user.html.j2', form=form)
您已经像下面这样通过 get 请求传递了数据:
<a href="{{ url_for('auth.register_user', username=form.username.data,
email=form.email.data, password=form.password.data, _external=True) }}">
例如,要访问用户名,您需要使用 request.args,如下所示:
username = request.args.get('username', '')
我正在为我的烧瓶应用程序设置注册功能。当用户请求注册时,我会向我的管理员帐户发送一封电子邮件,并希望批准或拒绝他们的请求。
当我发邮件的时候,注册表给的用户名,邮箱和密码都传入html,可以显示了。但是,当我尝试在使用 'url_for' 创建的 link 中移动这些变量时,它们是无法获得的。
这是我的管理员帐户收到的电子邮件:
<p>{{ form.username.data }} has requested registration authorization.</p>
<p> Their information is as follows,</p>
<p>Username: {{ form.username.data }}</p>
<p>Email: {{ form.email.data }}</p>
<p>Password: {{ form.password.data }}</p>
<p>
To register this user:
<a href="{{ url_for('auth.register_user', username=form.username.data,
email=form.email.data, password=form.password.data, _external=True) }}">
click here.
</a>
</p>
<p>-ADCo Inventory</p>
用户名、邮箱和密码都在这里正确显示。 这是 auth.register_user html,我只是暂时尝试显示用户名和密码,这是行不通的。
{% extends 'base.html.j2' %}
{% block content %}
<h2> Register {{ username }}</h2>
<h2>pass: {{ password }}</h2>
{% endblock %}
这里是auth.register_user的路线,如果有帮助的话:
@auth_bp.route('/register_user', methods=['GET', 'POST'])
def register_user():
form = RegistrationForm()
return render_template('register_user.html.j2', form=form)
您已经像下面这样通过 get 请求传递了数据:
<a href="{{ url_for('auth.register_user', username=form.username.data,
email=form.email.data, password=form.password.data, _external=True) }}">
例如,要访问用户名,您需要使用 request.args,如下所示:
username = request.args.get('username', '')