python - django (auth 的使用)
# """ 1. 创建用户: python manage.py createsuperuser 2. from django.contrib import auth auth.authenticate(username=username,password=pwd) 验证用户名和密码 如果验证成功,得到的是一个用户对象 如果验证失败,得到的是匿名用户 3. auth.login(request,user) 将验证过的用户赋值给 request.user 属性
这个属性激活后可以在页面中使用 {{ request.user.username }} / {{ request.user.email }} 等来获取这个用户的相关字段 4. auth.logout(request) request.session.flush() 将session数据都删除,并且Cookie 也失效
---扩展自带的 auth_user 表 1. 新建一个表,一对一关联上面的 auth_user 表 2. 继承的方式: from django.contrib.auth.models import AbstractUser class UserInfo(AbstractUser): phone = models.CharField(max_length=11) addr = models.CharField(max_length=128) 相当于对默认的 auth_user 表做了扩展,并代替 auth_user 注: 在 settings.py 中一定要加 AUTH_USER_MODEL = 'app名.类名'
3. 保存密码为加密
user_obj = models.UserInfo.objects.create(username="q") user_obj.set_password("xxx")
user_obj.save() # 记得设置后需要保存才能生效 """#