我有一个由Flask生成的网页,应该根据用户的状态显示内容。
目前,jinja2模板的相关部分如下所示:
{% if service.spotting_data.loco_id %}
Spotter Info *:<br />
{% if current_user.is_authenticated() %}
Loco: {{ service.spotting_data.loco_id }} <br />
Consist: {{ service.spotting_data.consist_info }}
{% else %}
We have information on the locomotive and consist for this service, however you need to <a href="{{ url_for('security.login') }}"> log in </a> to see it
{% endif %}
{% endif %}
当有人点击&#34;登录&#34>时会出现问题。链接 - 目前他们只是被重定向回索引页面,而不是包含此模板的页面。
有没有办法在<a href>
上为{{url_for()}}
提供额外的标记,以确保在登录后用户被重定向回此页面?
答案 0 :(得分:0)
你需要传递参数&#34; next&#34;到url_for。
当您使用render_template时,将请求对象发送到模板:
render_template(&#34; template.html&#34;,请求=请求)
然后在你的模板中你可以做
{{url_for(&#39; security.login&#39;,下一= Request的)}}
您将在登录时重定向回当前页面...