Django 创建CustomUser时出现Syncdb错误
问题在于我创建了自定义用户:Django 创建CustomUser时出现Syncdb错误,django,django-models,Django,Django Models,问题在于我创建了自定义用户: class CustomUser(AbstractUser): mobile = models.CharField(max_length=16) address = models.CharField(max_length=100) 在settings.py中写下:AUTH\u USER\u MODEL='login.CustomUser' 当我第一次运行manage.py syncdb时(当数据库不包含任何表时),它会抛出一个错误:django.d
class CustomUser(AbstractUser):
mobile = models.CharField(max_length=16)
address = models.CharField(max_length=100)
在settings.py
中写下:AUTH\u USER\u MODEL='login.CustomUser'
当我第一次运行manage.py syncdb时(当数据库不包含任何表时),它会抛出一个错误:django.db.utils.ProgrammingError:relation“auth_group”不存在
但是当我运行
manage.py syncdb
时,如果已经存在带有表的db,那么就可以创建其他表了。当db不包含表时运行它有什么问题?正如错误所说,CustomUser表与auth_group表有关系,因此除非该表已创建或存在,否则无法在db中创建此新表
当你说“db with tables已经存在,那就没问题了”时,你是手动创建了表还是在你安装的应用程序中包含了管理应用程序
因为如果你包含admin app,它会自动创建auth_group表,所以你不会看到这个问题
migration
目录迁移
目录中创建一个空的\uuuuu init\uuuuu.py
文件/manage.py makemigrations
/manage.py migrate
我认为,当您使用自定义用户模型时,您需要创建迁移。此外,
syncdb
已经被弃用,将在Django 1.9中删除,因此最好开始使用/manage.py migrate
命令。您使用的Django版本是什么?是的,我包括了管理应用程序:“Django.contrib.admin”,但问题仍然存在