我试图迁移我的自定义用户模型,我运行makemigrations命令来迁移新模型。但是当我运行migrate命令时,它抛出了以下错误:
raise不一致迁移历史(django.db.migrations.exceptions.不一致迁移历史:迁移admin.0001_initial在其依赖帐户.0001_initial之前应用于数据库'default'。
追溯:
Traceback (most recent call last):
File "C:\Users\enosh\venv_ruling\ruling\manage.py", line 22, in <module>
main()
File "C:\Users\enosh\venv_ruling\ruling\manage.py", line 18, in main
execute_from_command_line(sys.argv)
File "C:\Users\enosh\venv_ruling\lib\site-packages\django\core\management\__init__.py", line 419, in execute_from_command_line
utility.execute()
File "C:\Users\enosh\venv_ruling\lib\site-packages\django\core\management\__init__.py", line 413, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "C:\Users\enosh\venv_ruling\lib\site-packages\django\core\management\base.py", line 354, in run_from_argv
self.execute(*args, **cmd_options)
File "C:\Users\enosh\venv_ruling\lib\site-packages\django\core\management\base.py", line 398, in execute
output = self.handle(*args, **options)
File "C:\Users\enosh\venv_ruling\lib\site-packages\django\core\management\base.py", line 89, in wrapped
res = handle_func(*args, **kwargs)
File "C:\Users\enosh\venv_ruling\lib\site-packages\django\core\management\commands\migrate.py", line 95, in handle
executor.loader.check_consistent_history(connection)
File "C:\Users\enosh\venv_ruling\lib\site-packages\django\db\migrations\loader.py", line 306, in check_consistent_history
型号.py
from django.contrib.auth.models import AbstractUser
class CustomUser(AbstractUser):
"""extend usermodel"""
class Meta:
verbose_name_plural = 'CustomUser'
我刚才在这个问题中提到了用户模型,但是如果需要更多的代码,请告诉我,我会用这些信息更新我的问题。谢谢
3条答案
按热度按时间5us2dqdw1#
1.删除数据库
1.从所有应用程序中删除pycache和迁移
1.确保已设置AUTH_USER_MODEL
1.进行迁移
j91ykkif2#
我只是想我可能会把我的经验与此-作为一个Postgres菜鸟。
在www.example.com中使用带有OPTIONS子句的Postgressettings.py
我并不清楚Postgres是否按顺序搜索 * 那些模式中的表 *。
因此,如果您希望执行干净的、第一次的初始迁移到“main”模式-请确保之前没有在模式“dev”中进行过迁移。
“main”中的当前迁移将失败,因为它在“dev”中发现不匹配的迁移数据
axr492tv3#
有时可以使用--fake来排除项目中的假迁移