Django Auth用戶認證組件實現(xiàn)代碼
用戶認證組件:
功能:用session記錄登錄驗證狀態(tài)
前提:用戶表:django自帶的auth-user
python3 manage.py createsuperuser #創(chuàng)建超級用戶
補充匿名用戶:
API: from django.contrib import auth : 1. #if 驗證成功返回user對象,否則返回None user = auth.authenticate(username=user,password=pwd) 2. auth.login(request,user) #request.user 當前登錄對象 3. auth.login(request) from django.contrib.auth.models import User #User == auth_user 4. request.user.is_authenticated 5.user = User.objects.create_user(username=’’,password=’’,email=’’) 補充: 匿名用戶對象: 匿名用戶 class models.AnonymousUser django.contrib.auth.models.AnonymousUser #這個類實現(xiàn)了django.contrib.auth.models.User 借口,但是又幾點不同: id永遠是None username永遠為空字符串 get_username()永遠返回空字符串 is_staff和is_superuser永遠是False is_active永遠是False groups和user_permissions永遠為空 is_annonymous()返回True 而不是False is_authenticated()返回時False,而不是True set_password()、check_password()、save()和delete()引發(fā)NotImplementedError。 New in Django 1.8: 新增 AnonymouseUser.get_username()以更好的模擬django.contrib.auth.moudels.User總結(jié):if not :auth.login(request,user)request.user = AnonymousUser()else:request.user==登錄對象request.user是一個全局變量
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 以PHP代碼為實例詳解RabbitMQ消息隊列中間件的6種模式2. html小技巧之td,div標簽里內(nèi)容不換行3. PHP字符串前后字符或空格刪除方法介紹4. 將properties文件的配置設置為整個Web應用的全局變量實現(xiàn)方法5. nestjs實現(xiàn)圖形校驗和單點登錄的示例代碼6. AspNetCore&MassTransit Courier實現(xiàn)分布式事務的詳細過程7. XML入門的常見問題(一)8. jsp cookie+session實現(xiàn)簡易自動登錄9. css進階學習 選擇符10. Echarts通過dataset數(shù)據(jù)集實現(xiàn)創(chuàng)建單軸散點圖
