Django—用户认证系统(前期配置)

  • 配置


    主要的操作包括:
    1. create_user 创建⽤户
    2. authenticate 验证登录
    3. login 记住⽤户的登录状态
    4. logout 退出登录
    5. is_authenticated 判断⽤户是否登录
    6. @login_required 判断⽤户是否登录的装饰器

    1. 在setting.py的INSTALLED_APPS
    INSTALLED_APPS = [
     'django.contrib.auth', 
     # ⽤户权限处理部分依赖的应⽤ 
     'django.contrib.contenttypes', ]
    
    
    
    2. 在setting.py的MIDDLEWARE
    MIDDLEWARE = [
    # 会话⽀持中间件
    'django.contrib.sessions.middleware.SessionMiddleware',
    # 认证⽀持中间件
    'django.contrib.auth.middleware.AuthenticationMiddleware', ]
    
    
    AUTH_USER_MODEL = 'app名字.User'

    继承AbstractUser
    1. 说明
    推荐⽅式、django.contrib.auth.models.User 也是继承⾃ AbstractUser 抽
    象基类,⽽且仅仅就是继承了 AbstractUser ,没有对 AbstractUser 做任何
    的拓展
    User 对象属性:username, password(必填项)password⽤哈希算法保
    存到数据库
    is_staff : ⽤户是否拥有⽹站的管理权限.
    is_active : 是否允许⽤户登录, 设置为 False ,可以不⽤删除⽤户来禁⽌ ⽤户
    登录
    
    
    
    2. 在app的models.py中
    class User(AbstractUser):
     phone = models.CharField(
     max_length=12,
     null=True,
     verbose_name="⼿机号"
     )
     class Meta(AbstractUser.Meta):
     db_table='user'
    
    
    3. 注意
    为了让 Django ⽤户认证系统使⽤我们⾃定义的⽤户模型,必须在 settings.py
    ⾥通过 AUTH_USER_MODEL 指定⾃定义⽤户模型所在的位置
    AUTH_USER_MODEL = 'app名字.User'
    
    
    4. 迁移
    python manage.py makemigrations
    python manage.py migrate

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值