2017-04-26 108 views
0

我在註銷Django時有一個ValueError。 它說:視圖django.contrib.auth.logout沒有返回一個HttpResponse對象。它返回None而不是。Django註銷ValueError

我的代碼是非常短:

def logout_view(request): 
    logout(request) 
    return HttpResponseRedirect('/some_page/') 

我用快捷試圖重定向爲好。可能我誤解了這是如何工作的。

+0

請顯示您的url模式,以及'logout'的導入。 – Alasdair

+0

什麼是確切的堆棧跟蹤?註銷不會返回任何內容。如何設置您的url模式? – karthikr

+0

我與網址發生了錯誤。非常感謝,很抱歉。 – kmichael08

回答

0

使用此代碼。對我來說工作得很好。

from django.core.urlresolvers import reverse 
from django.contrib.auth import login, logout , authenticate 

def accounts_logout(request): 
    logout(request) 
    url = reverse("accounts:login") 
    return redirect(url, args=(),kwargs={}) 

在您的URL模式應該有一個URL:

url(r'^accounts-login/$', views.accounts_login, name='login'), 
0

試試這個。

return render_to_response('logout.html', {'request': request})