Django注销未注销用户

Posted

技术标签:

【中文标题】Django注销未注销用户【英文标题】:Django logout is not logging out user 【发布时间】:2021-11-23 18:49:37 【问题描述】:

我做了很多搜索,我真正能找到的是以下变体:

from django.contrib.auth import logout

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

这是我认为的代码:

from django.contrib.auth import logout

def leave(request):
    logout(request)
    return redirect("index")

但是,它既不会注销用户,也不会转到索引页面。

我也有:

path('accounts/', include('django.contrib.auth.urls')),

在我的网址页面中。我尝试在我的网址前加上“accounts/”,但这只会导致错误。

【问题讨论】:

【参考方案1】:

在你的 settings.py 中添加这个

LOGOUT_REDIRECT_URL = 'index'

在您的模板中,如果您想注销用户,只需调用 (href="% url 'logout' %") 类似这样的名称

<a class="btn btn-primary" href="% url 'logout' %"> <span class="glyphicon glyphicon-log-out"></span> log out</a>

【讨论】:

以上是关于Django注销未注销用户的主要内容,如果未能解决你的问题,请参考以下文章

如何在django中注销时获取用户

django rest框架json web token注销功能

转载django用户注册登录注销和用户扩展

Facebook 的 Sharekit(Graph API 版本)注销方法未完全注销或取消授权用户

当用户在django中注销时,如何拒绝访问上一页?

在注销发生之前未保存当前用户的设置