django-自定義User對象數據模型建立
阿新 • • 發佈:2017-10-29
turn ini 默認 mat con unique 修改 分享 nag
自定義User
1,修改models.py
1,1完全自定義(不要django默認的字段)
from django.contrib.auth.models import AbstractBaseUser from django.db import models class MyUser(AbstractBaseUser): #下面兩行一定要加上的 identifier = models.CharField(max_length=40, unique=True) USERNAME_FIELD = ‘identifier‘ #自己新增的字段 jifen = models.IntegerField("積分", default=0) class Meta: db_table = "myUser" def __str__(self): return self.identifier
1,2不完全自定義User(在django的User默認的字段上增加)
from django.contrib.auth.models import AbstractUser
from django.db import models
class MyUser(AbstractUser):
jifen = models.IntegerField("積分", default=0)
class Meta:
db_table = "myUser"
def __str__(self):
return self.id
2,修改settings.py
# 在Settings.py加入
AUTH_USER_MODEL = ‘blog.MyUser‘
3,刪除數據庫,重新創建數據庫
如果你之前執行過同步數據庫的話.數據庫就會有django默認的用戶表.不刪除就沖突.所以定義User最好第一時間去做.
4,把app目錄下的migrations記錄刪掉
除了__init__.py其他全部刪掉.
5,執行同步命令
$ python manage.py makemigrations
$ python manage.py migrate
完全自定義User
不完全自定義User
django-自定義User對象數據模型建立