如何检查用户是否login(如何正确使用user.is_authenticated)?
我正在看这个网站,但似乎无法弄清楚如何做到这一点,因为它不工作。 我需要检查当前的网站用户是否login(validation),并试图:
request.user.is_authenticated
尽pipe确定用户已经login,但它只返回:
>
我可以做其他的请求(从上面的url第一部分),如:
request.user.is_active
这将返回一个成功的响应。
is_authenticated
是一个函数。 你应该这样称呼它
if request.user.is_authenticated(): # do something if the user is authenticated
正如Peter Rowell所指出的那样,可能会让你失望的是,在默认的Django模板语言中,你不会用括号来调用函数。 所以你可能在模板代码中看到类似这样的东西:
{% if user.is_authenticated %}
但是,在Python代码中,它确实是User
类中的一个方法。
编辑Django 1.10 : is_authenticated
现在是Django 1.10中的一个属性。 该方法仍然存在向后兼容,但将在Django 2.0中被删除。
以下块应该工作:
{% if user.is_authenticated %} <p>Welcome {{ user.username }} !!!</p> {% endif %}