Django自帶的用戶(hù)驗(yàn)證系統(tǒng)實(shí)現(xiàn)
首先,我要說(shuō)明一下,下面內(nèi)容不是必須品,如果各位大神喜歡手寫(xiě)也是可以的,你也可以選擇自帶的功能來(lái)縮減你的代碼量,提高效率!
第一步 系統(tǒng)配置用戶(hù)表
首先,在models中創(chuàng)建用戶(hù)表,導(dǎo)包
from django.contrib.auth.models import AbstractUser #創(chuàng)建用戶(hù)表 class User(AbstractUser): username = models.CharField(max_length=200,unique=True) password = models.CharField(max_length=200) class Meta: db_table = 'user'
在settings中指定系統(tǒng)驗(yàn)證使用的表(models)
AUTH_USER_MODEL = "表所在的應(yīng)用名.表名" 如: 應(yīng)用名 表名 AUTH_USER_MODEL = "myapp.User"
配置完成后,便可以遷移數(shù)據(jù)庫(kù)了
通過(guò)Django自帶的AbstractUser,可以自動(dòng)創(chuàng)建一些用戶(hù)表所需的字段,如下圖:
第二步 用戶(hù)注冊(cè)和登陸驗(yàn)證功能
from django.contrib.auth import authenticate class UserView(APIView): def post(self,request): #創(chuàng)建新用戶(hù) User.objects.create_user(username='小明',password='123') return Response({'code':200}) def get(self,request): #驗(yàn)證用戶(hù)信息 result = authenticate(username='小明',password='123') return Response({'code':200})
可以通過(guò)create_user給你的用戶(hù)表添加新用戶(hù),通過(guò)authenticate驗(yàn)證用戶(hù)是否存在,如果存在 result的值為username,否則為None
上面的Demo僅僅做為演示,具體功能可以根據(jù)自己的需求添加
到此這篇關(guān)于Django自帶的用戶(hù)驗(yàn)證系統(tǒng)實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Django 用戶(hù)驗(yàn)證內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python中列表(list)和元組(tuple)的深入講解
這篇文章主要給大家介紹了關(guān)于python中列表(list)和元組(tuple)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03PyTorch dropout設(shè)置訓(xùn)練和測(cè)試模式的實(shí)現(xiàn)
這篇文章主要介紹了PyTorch dropout設(shè)置訓(xùn)練和測(cè)試模式的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。2021-05-05Python無(wú)參裝飾器的實(shí)現(xiàn)方案及優(yōu)化
裝飾器(Decorators)是 Python 的一個(gè)重要部分,所謂裝飾器就是閉包函數(shù)的一種應(yīng)用場(chǎng)景,這篇文章主要給大家介紹了關(guān)于Python無(wú)參裝飾器的相關(guān)資料,需要的朋友可以參考下2021-08-08Python?lambda函數(shù)使用方法深度總結(jié)
在本文中,小編將帶大家學(xué)習(xí)一下Python中的lambda函數(shù),并探討使用它的優(yōu)點(diǎn)和局限性。文中的示例代碼講解詳細(xì),感興趣的可以了解一下2022-05-05Python利用Turtle繪制Technoblade的示例代碼
國(guó)外一位在YouTube擁有上千萬(wàn)粉絲的我的世界游戲主播Technoblade因癌癥與世長(zhǎng)辭,為了紀(jì)念他,特地寫(xiě)了這篇文章,教大家用Turtle繪制出Technoblade,快跟隨小編一起學(xué)習(xí)一下吧2023-01-01詳解pandas中缺失數(shù)據(jù)處理的函數(shù)
這篇文章主要為大家詳細(xì)介紹一下pandas中處理缺失數(shù)據(jù)的一些函數(shù),文中具體講解了一下各個(gè)函數(shù)的使用,需要的可以參考一下2022-01-01