【发布时间】:2017-04-23 06:10:02
【问题描述】:
我正在尝试通过继承 AbstractBaseUser 来扩展 django User 模型,以便能够操纵项目的身份验证过程。
这是我的模型的样子。
class AccountManager(BaseUserManager):
... create_user
... create_superuser
class Account(AbstractBaseUser):
email = models.EmailField(unique=True)
username = models.CharField(max_length=40, unique=True)
objects = AccountManager()
USERNAME_FIELD = 'email'
REQUIRED_FIELDS = ['username']
这是我的设置INSTALLED_APPS
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'debug_toolbar',
'rest_framework',
'compressor',
'authentication'
]
AUTH_USER_MODEL = 'authentication.Account'
这里的问题我注意到 django 绕过 auth.0001_initial 的迁移过程,它直接创建了 admin.0001_initial 使我的迁移失败
django.db.utils.IntegrityError: (1215, u'Cannot add foreign key constraint')
我该如何解决这个问题请帮忙?
【问题讨论】:
标签: python django django-models django-migrations django-users