日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

Django 【认证系统】auth

發布時間:2023/11/30 windows 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Django 【认证系统】auth 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本篇內容

介紹Django框架提供的auth 認證系統

方法:

方法名

備注

create_user

創建用戶

authenticate

登錄驗證

login

記錄登錄狀態

logout

退出用戶登錄

is_authenticated

判斷用戶是否登錄

login_required裝飾器

進行登錄判斷

?

引入模塊

from django.contrib import auth

登錄認證

user = auth.authenticate(username=username, password=pwd)if user is not None:# 將登錄的用戶封裝到request.user# 在中間件中 process_request 中每次都這樣子處理# id = request.session.get("user_id") 得到id# user = auth.User.objects.get(id=id)# request.user = userauth.login(request, user=user)return redirect("/index/")

驗證通過則返回user,沒有則返回None,在?login?函數中將認證通過的用戶賦值給?request.user?屬性,以及內部的?session?操作。?封裝request.user = user ? ? ??

認證裝飾器??login_required?

from django.contrib.auth.decorators import login_required@login_required def index(request):print(request.user.username)return render(request, "index.html")

需要配置登錄視圖的url,所以需要在?settings?文件中配置如下:

# 如果沒有登錄 默認跳轉的url LOGIN_URL = "/login/"

創建用戶

1.普通用戶

from django.contrib.auth.models import User# 加密的user = User.objects.create_user(username="tanglaoer2", password="tanglaoer")user.set_password("tang")user.save()

2.超級用戶

user = User.objects.create_superuser(username="tanglaoer2", password="tanglaoer") user.set_password("tang") user.save()

注銷

auth.logout(request)

內部相當于?request.session.flush()?

擴展自帶的auth_user表

1.新建一個表, 一對一關聯上面的auth_user表

或者新建一個表,繼承的方式

from django.contrib.auth.models import AbstractUserclass UserInfo(AbstractUser):phone = models.CharField(max_length=11)addr = models.CharField(max_length=128)

相當于對默認的?auth_user?表做了擴展, 并且代替?auth_user?,還需要在配置文件?settings?中進行如下配置:

# 如果使用繼承的方式 繼承auth的models,要在settings.py里面配置 默認用戶認證時使用的哪張表 AUTH_USER_MODEL = "app.UserInfo"

auth認證還是使用?auth?? 只是創建用戶的時候改為 用?UserInfo?

轉載于:https://www.cnblogs.com/tangkaishou/p/10226579.html

總結

以上是生活随笔為你收集整理的Django 【认证系统】auth的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。