Django的标准库存放在 django.contrib 包中。每个子包都是一个独立的附加功能包。

这些子包一般是互相独立的,不过有些django.contrib子包需要依赖其他子包,其中django.contrib.auth 为Django的用户验证框架

 

Django内置了用户认证系统,处理用户账号,用户组,权限,基于cookie的session,并且内置了一些快捷函数

官方网址  https://docs.djangoproject.com/en/1.11/topics/auth/

 

auth本质内置app,需要条件,Django默认已配置

INSTALLED_APPS
    'django.contrib.auth'
    'django.contrib.contenttypes'
MIDDLEWARE
    'django.contrib.sessions.middleware.SessionMiddleware'
    'django.contrib.auth.middleware.AuthenticationMiddleware'

 

User objects

 

核心,必须了解,为以后定制做准备

fields

  • username

  • password

  • email

  • first_name

  • last_name

  • groups

  • user_permissions

  • is_staff

  • is_active

  • is_superuser

  • last_login     # 最后登录时间

  • date_joined  # 账号添加时间

attr 

  • is_authenticated

  • is_anonymous

  • username_validator  # 用户名校验

method

  • get_username()

  • get_full_name()

  • get_short_name()

  • set_password()       # 加密处理,保持算法一致

  • check_password()  # 验证密码,和set_password() 算法一致

  • set_unusable_password()

  • has_unusable_password()

  • get_group_permissions()

  • get_all_permissions()

  • has_perm()

  • has_module_perms()

  • email_user()

源码分析

class User(AbstractUser):
    # username, password and email 是必填项. 其他字段是可选的.

    class Meta(AbstractUser.Meta):
        swappable = 'AUTH_USER_MODEL'
 
User

相关文章:

  • 2022-12-23
  • 2022-01-09
  • 2021-05-30
  • 2022-12-23
  • 2022-12-23
  • 2021-08-12
猜你喜欢
  • 2021-12-24
  • 2022-12-23
  • 2021-12-15
  • 2021-09-03
  • 2021-12-28
  • 2022-02-04
相关资源
相似解决方案