我是 python 和 django 的新手。我正在尝试使用 django 框架进行安全的用户身份验证。我在 [templates/user] 中创建了一个 login.html 页面。如果登录成功用户导致 user/ContactSuccess.html。
ContactSuccess.html :
<html>
---------{{request.user.username }}------------
{% if request.user.is_authenticated %}
<p>Welcome, {{ user.username}}. Thanks for logging in.</p>
{% else %}
<p>Welcome, new user. Please log in.</p>
{% endif %}
<body>success</body>
</html>
视图.py
…………
def testlogsuccess(request):<br/>
if not request.user.is_authenticated():
return HttpResponseRedirect("/accounts/login/")
else:
user = request.user.is_authenticated()
return render_to_response('user/ContactSuccess.html',locals())
.....................
网址.py:
urlpatterns = patterns('',
(r'^admin/', include(admin.site.urls)),
(r'^accounts/login/$',login),
(r'^accounts/logout/$', logout),
(r'^accounts/profile/$', views.testlogsuccess),
很好,它工作正常。
输出是:
---------Ji------------
Welcome, . Thanks for logging in.
success .
但我的问题是当我停止我的开发服务器然后重新启动它然后在没有登录的情况下尝试 url 'http://127.0.0.1:8000/accounts/profile/' 时,它仍然显示上述输出。我怎样才能避免这种情况。
我正在使用 django 1.3、python 2.7.2 和 windows7。