django自带的登录注册和注销

实现登录注册和注销的url

from django.conf.urls import url

from uauth import views

urlpatterns = [
    url(r'^regist/', views.regist),
    url(r'^login/', views.login),
    url(r'^dj_login/',views.djlogin),
    url(r'^dj_regist/', views.djregist),
    url(r'dj_logout/',views.djlogout),
]

实现登录的方法(djlogin)注册的方法(djregist)注销方法(djlogout)

from django.contrib import auth
from django.contrib.auth.models import User
from django.http import HttpResponseRedirect, HttpResponse
from django.shortcuts import render
#登录方法
def djlogin(request):
    if request.method == 'GET':
        return render(request, 'day6_login.html')
    if request.method == 'POST':
        name = request.POST.get('name')
        password = request.POST.get('password')
        # 验证用户名和密码,通过的话,返回user对象
        user = auth.authenticate(username=name, password=password)
        if user:
            # 验证成功,登录
            auth.login(request, user)
            return HttpResponseRedirect('/stu/index/')
        else:
            return render(request, 'day6_login.html')

#注册方法
def djregist(request):
    if request.method == 'GET':
        return render(request, 'day6_regist.html')

    if request.method == 'POST':
        name = request.POST.get('name')
        password = request.POST.get('password')

        User.objects.create_user(username=name, password=password)

        return HttpResponseRedirect('/uauth/dj_login/')


#注销方法
def djlogout(request):
    if request.method == 'GET':
        auth.logout(request)
        return HttpResponseRedirect('/uauth/dj_login/')

猜你喜欢

转载自blog.csdn.net/qq_40861391/article/details/80177196