Django内置的退出方法
2018年2月7日编辑account/urls.py
1 2 3 4 5 6 7 8 9 10 11 |
from django.conf.urls import url from . import views from django.conf import settings from django.contrib.auth import views as auth_views # 引入刚才内容的视图文件并重命名为auth_views urlpatterns = [ # 使用自己写的登陆方法 # url(r'^login/$', views.user_login, name="user_login"), url(r'^login/$', auth_views.login, name="user_login"), # 使用django内置的方法 url(r'^logout/$', auth_views.logout, {"template_name": "account/logout.html"}, name="user_logout"), #使用django内置的方法退出传参到自定义模板 ] |
然后在编写templates/header.html针对logout的那个超链接修改一下
1 2 3 4 5 6 7 8 9 10 11 12 |
<nav> <ul> <li><a href="{% url 'blog:blog_title' %}">blog</a></li> <!--is_authenticated返回用户登录状态并且判断--> {% if user.is_authenticated %} <li><a href="">{{ user.username }}</a></li> <li><a href="{% url 'account:user_logout' %}">Logout</a></li> {% else %} <li><a href="{% url 'account:user_login' %}">login</a></li> {% endif %} </ul> </nav> |
然后添加account\logout.html退出页面
1 2 3 4 5 6 |
{% extends "base.html" %} {% block title %}login{% endblock %} {% block content %} <h1>logout</h1> <p>退出成功</p> {% endblock%} |
测试一下