美文网首页
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