学习日记之《Django3 Web应用开发实战》——第十章——Auth 认证系统

本文详细介绍了如何在Django中实现Auth认证系统,包括内置USER模型的用户管理,如修改密码、注册流程,以及如何自定义用户模型和权限。还展示了如何在视图和模板中处理用户认证和权限检查。

第十章——Auth 认证系统

内置USER 实现用户管理

# 举例说明
def setpsView(request):
    title = '修改密码'
    pageTitle = '修改密码'
    password2 = True
    if request.method == 'POST':
        u = request.POST.get('username', '')
        p = request.POST.get('password', '')
        p2 = request.POST.get('password2', '')
        if User.objects.filter(username=u):
            user = authenticate(username=u, password=p)
            if user:
            	# 方式一
                user.set_password(p2)  将该用户密码设置为p2
                # 方式2
                dj_ps = make_password(p2, salt=None, hasher='pbkdf2_sha256')
                user.password = dj_ps

                user.save()
                tips = '密码修改成功'
            else:
                tips = '原始密码不正确'
        else:
            tips = '用户不存在'
    return render(request, 'user.html', locals())

模型USER的拓展和使用

# models.py
编写拓展模型
from django.db import models
from django.contrib.auth.models import AbstractUser

# Create your models here.
class MyUser(AbstractUser):
    qq = models.CharField('QQ号码', max_length=16)
    wechat = models.CharField('微信账号', max_length=100
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值