Django——auth_user
一、User对象的属性
is_staff : 用户是否拥有网站的管理权限,是否可以登录到后台管理 1代表True is_superuser:是否是超级管理员(如果is_staff=1,可以任意增删查改任何表数据) is_active : 是否允许用户登录, 设置为 False,可以在不删除用户的前提下禁止用户登录(三次密码输入错误禁用用户)
二、扩展默认的auth_user表
1 内置的auth_user表,要加字段,加不了,扩展该表
-方式一:一对一 (传统方式)
-方式二,通过继承
# 方式二:通过继承,一定要记住再setting中配置
## 重点:使用这种方式,一开始就要用
from django.contrib.auth.models import AbstractUser
class User(AbstractUser):
# id=models.AutoField(primary_key=True)
# username = models.CharField(max_length=128)
phone = models.CharField(max_length=32)
addr = models.CharField(max_length=32)
## setting.py中
'''
# 引用Django自带的User表,继承使用时需要设置
AUTH_USER_MODEL = "app名.UserInfo"
'''
AUTH_USER_MODEL = "app01.User"
代码:
略
三、如果项目一开始没有扩展auth_user表,后期想扩展的操作步骤
1 备份--删库---》重新创建出数据库 2 所有app的数据迁移记录删除migrations下除了__init__.py都删除 3 (重要!!!)去源码中删除auth和admin 这俩app的migrations下除了__init__.py都删除 4 数据迁移,同步到数据库 5 备份的数据,恢复回去
赞 (0)
