Django 迁移文件报错django.db.migrations.exceptions.InconsistentMigrationHistory;OperationalError 1050
django.db.migrations.exceptions.InconsistentMigrationHistory: Migration admin.0001_initial is applied before its dependency authentication.0001_initial on database 'default'.
解决办法:
-
删除数据库中名为django_migrations表
-
删除app下migrations下生成的001_initial.py等文件,只保留__init__.py文件
但是后面,又出现另外的报错:
django.db.utils.OperationalError: (1050, "Table 'django_content_type' already exists")
解决办法:
-
删除数据库中名为django_migrations表
-
删除app下migrations下生成的001_initial.py等文件,只保留__init__.py文件
-
重新运行python manage.py makemigrations
-
运行python manage.py migrate --fake
重点就是那个 --fake
你可以理解为,使django忽略表已存在,继续执行迁移文件,类似ignore。