验证后更改“通过Steam登录”徽标

时间:2015-11-18 19:44:35

标签: python flask steam

我正在关注this教程,该教程展示了如何通过基于Flask的网站中的Steam登录。所以问题是当用户登录并显示他的用户名而不是它时,我如何删除“通过Steam登录”徽标?当他退出时做相反的事情?我现在在我的html模板中有什么:

<li><a href="/login"><input type="image" name="SignIn" value="SignIn" src="static/steam.png"/></a></li>

2 个答案:

答案 0 :(得分:0)

我相信我们可以使用session词典执行此操作。

{% if not session.logged_in %}
<li><a href="/login"><input type="image" name="SignIn" value="SignIn" src="static/steam.png"/></a></li>
{% else %}
<li><a href="/logout">Logout</a></li>
{% endif %}

答案 1 :(得分:0)

在上述教程中,当前用户对象存储在g.user变量:

@app.before_request
def before_request():
    g.user = None
    if 'user_id' in session:
        g.user = User.query.get(session['user_id'])

Jinja2模板中的g全局变量is available也是如此。因此,您可以在模板中执行以下操作:

{% if g.user is defined and g.user is not none %}
{# User has logged in #}
<li>Hello, {{ g.user.nickname }}!</li>
<li><a href="/logout">Logout</a></li>

{% else %}
{# User has not logged in #}
<li><a href="/login"><input type="image" name="SignIn" value="SignIn" src="static/steam.png"/></a></li>
{% endif %}