美文网首页
Django自定义用户属性替换自带的USER权限

Django自定义用户属性替换自带的USER权限

作者: The丶xu | 来源:发表于2019-04-29 17:18 被阅读0次

此方法建立在新建项目的基础上,不适合更改原有的项目。
重写user的app中model.py文件内容如下:

models.py
from django.contrib.auth.models import AbstractUser

class UserProfile(AbstractUser):
    """
    用户
    """
    name = models.CharField(max_length=30, null=True, blank=True, verbose_name="姓名")
    birthday = models.DateField(null=True, blank=True, verbose_name="出生年月")
    gender = models.CharField(max_length=6, choices=(("male", u"男"), ("female", "女")), default="female", verbose_name="性别")
    mobile = models.CharField(null=True, blank=True, max_length=11, verbose_name="电话")
    email = models.EmailField(max_length=100, null=True, blank=True, verbose_name="邮箱")

    class Meta:
        verbose_name = "用户"
        verbose_name_plural = verbose_name

    def __str__(self):
        return self.username

setting.py中需要加入如下内容:

AUTH_USER_MODEL = 'MyUsers.UserProfile'     #MyUsers为app的名称 ,UserProfile为刚才上方定义的model

如此以来执行以下命令就能替换原有的user
python manage.py makemigrations
python manage.py migrate

相关文章

网友评论

      本文标题:Django自定义用户属性替换自带的USER权限

      本文链接:https://www.haomeiwen.com/subject/oaczgqtx.html