2010-01-15 35 views
5

这里是我与Django的AutheneticationDjango的退出问题

  1. 访问面临着需要登录一个页面的问题。
  2. 注销(访问django.contrib.auth.logout)
  3. 访问原始登录保护页面。您还在登录

任何想法如何解决问题?

MY Django的会话设置是

SESSION_EXPIRE_AT_BROWSER_CLOSE =真 SESSION_COOKIE_AGE = 3600个

感谢, Sujit

+3

当你说'3。访问原文...'你的意思是'使用后退箭头键并看到缓存页面图像',或者你的意思是'点击一个链接到一个受保护的页面,它的工作时,它不应该'? – 2010-01-15 23:18:23

+0

这两种情况...当点击返回按钮并输入受保护的页面url时。 – SystemMatrix 2010-01-18 20:48:56

+0

我添加了一个新问题,看起来很像你的。解决了它!请参阅http://stackoverflow.com/questions/14021913/django-logout-not-working – 2012-12-24 13:15:58

回答

1

基本上,this should work

from django.contrib.auth import logout 

def logout_view(request): 
    logout(request) 
    # Redirect to a success page. 

你能张贴您的看法澄清如果它不是这样的?

+0

感谢您的回复。 我有注销机制的确切代码。 但仍不注销 – SystemMatrix 2010-01-18 20:49:44

0

意见

从django.contrib.auth进口注销

高清logout_user(请求):

""" 
    logout the user 
""" 

logout(request) 
return HttpResponseRedirect('/qioness/connect/') 

网址:

url(r'^userlogout/$',logout_user), 

工作4我

1

在D jango 1.4。*我的logout()函数有问题。它根本没有注销我的用户。

现在我只是使用贡献的视图来注销用户,它完美的作品。只需添加到您的根urls.py文件,如果你不想做别的特殊:

(r'^logout/$', 'django.contrib.auth.views.logout', {'next_page': '/login'}), 

,你会好到哪里去。

快乐的Djangoing。

0

这对我有效。我太困扰这个问题。在youtube上找到以下解决方案。

我的解决方案虽然有点修改。

在views.py

from django.contrib.auth import authenticate, login, logout 
from django.shortcuts import redirect 

def auth_logout(request): 
    logout(request) 
    return redirect('home') 

在urls.py

url(r'^logout$', views.auth_logout, name='auth_logout'), 
0

变化会议到期接近假,与真正的将无法登录你,直到你关闭浏览器