【django】用户退出登录功能实现【13】

导读:本篇文章讲解 【django】用户退出登录功能实现【13】,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

1、前端逻辑

<div class="top-bar-right">

	<ul class="header-user-links">
          {% if user.username %}
              欢迎您! <span style="font-weight: bolder;">[ {{ user.username }} ]</span>
              &emsp;<a href="/logout/">退出登录</a>&nbsp;
              {% else %}
              <li>
                  <a href="/login/">登录</a>&nbsp;&nbsp;&nbsp;
                  <a href="/register/">注册</a>
              </li>
          {% endif %}
	</ul>
</div>

2、配置路由

主路由

from django.contrib import admin
from django.urls import path,re_path,include

urlpatterns = [
    path('admin/', admin.site.urls),
    re_path('^',include('userapp.urls')),
    re_path('^',include(('newsapp.urls','newsapp'),namespace='newsapp'))
]

子路由

from django.urls import path,re_path
from . import views

urlpatterns=[
    re_path('^register/$',views.RegisterView.as_view()),
    re_path('^usernames/(?P<username>[a-zA-Z_]{5,8})/count/$',views.UsernameCount.as_view()),
    re_path('^logout/$',views.LogoutView.as_view())
]

3、定义视图

特别注意:退出功能,django自带的logout()函数帮我们实现了
源码实现的逻辑如下
在这里插入图片描述

from django.shortcuts import render
from django.views.generic.base import View
from . models import Users
from django.contrib.auth import login,logout
from django.shortcuts import redirect
from django.urls import reverse

class LogoutView(View):
    def get(self,request):
        '''
        用户退出登录功能
        :param request:
        :return:
        '''
        logout(request)
        return redirect(reverse('newsapp:index'))

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/74092.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!