Django继承自带user表并重写

1.在models里引入

from django.contrib.auth.models import AbstractUser

2.自定义一个类继承AbstractUser

class UsersModels(AbstractUser):
    nick_name = models.CharField(max_length=20, verbose_name='昵称')
    birday = models.DateField(verbose_name='生日', null=True, blank=True)
    address = models.CharField(max_length=50, verbose_name='地址', default='')
    mobile = models.CharField(max_length=11, verbose_name='手机', default='')
    image = models.ImageField(upload_to='images/%Y/%m', default='images/default.png', verbose_name='头像')
    sex = models.CharField(max_length=10, default='',verbose_name='性别')
    age=models.CharField(max_length=5,default='',verbose_name='年龄')

    class Meta:
        db_table = 'user'
        verbose_name = '用户信息'
        verbose_name_plural = verbose_name

上面verbose_name是在后台显示的字段名称。

3.在settings里面配置

# 配置使用到的用户模型类
AUTH_USER_MODEL = 'register.UserProfile'    #register 指的是app名称


小知识点

# choices 枚举选项 ,必须从指定的项中选择一个
    send_type = models.CharField(choices=(('register', '注册邮件'), ('forget', '找回密码')), max_length=10, verbose_name='邮件类型')
    # 邮件使用状态
    status = models.BooleanField(choices=((True, '已使用'), (False, '未使用')), verbose_name='邮件状态', default=False)

你可能感兴趣的:(Django)