django重寫User,添加或刪除字段

1.引入AbstractUser
   from django.contrib.auth.models import AbstractUser
2.# 繼承並重寫user
class User(AbstractUser):
    #刪除字段  這裏是不想要的字段,直接賦值爲None即可
    first_name = None
    last_name = None
    groups = None
    user_permissions = None
    #添加字段
    Role = models.ForeignKey('account.Role', on_delete=models.CASCADE, null=True)
    nickname = models.CharField(max_length=30, null=True, blank=True, verbose_name="姓名")
    mobile = models.CharField(null=True, blank=True, max_length=11, verbose_name="電話")
    creator = models.CharField('創建人', max_length=200,null=True)
    modifier = models.CharField('修改人', max_length=200, null=True )
    create_time = models.DateTimeField('創建時間',auto_now=datetime.datetime.now(), null=True)
    modify_time = models.DateTimeField('修改時間',auto_now=datetime.datetime.now(),null=True )
    class Meta:
        verbose_name_plural = '賬號'
        verbose_name = '賬號'
        unique_together = (("mobile"),)
    def __str__(self):
        return self.username 
3.在settings.py中添加
AUTH_USER_MODEL = 'account.User'

4.在admin.py中註冊
class UserInfoAdmin(admin.ModelAdmin):
     list_display = ('username','email')
admin.site.register(User, UserInfoAdmin)

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章