欢迎来到代码驿站!

Python代码

当前位置:首页 > 软件编程 > Python代码

Django数据库迁移报错InconsistentMigrationHistory

时间:2021-10-03 17:02:40|栏目:Python代码|点击:

Django在执行python manage.py makemigrations的时候一切正常

在这里插入图片描述

但是执行python manage.py migrate提示异常:
raise InconsistentMigrationHistory( django.db.migrations.exceptions.InconsistentMigrationHistory: Migration admin.0001_initial is applied before its dependency user.0001_initial on database 'default'

在这里插入图片描述

原因:Django中有一个原生的User模型类,admin的模型依赖这个模型类,由于前面一个应用中的模型类User继承了AbstractUser类,所以提示这个错误。

解决方案一:

  • 把之前数据库中生成的所有表删除,重新进行迁移
  • 执行删库命令(服务器远端慎用):drop database [数据库名]
  • 然后然后重新创建数据库:create database [数据库名]

我是以上方案就解决了

PS:
因为我是本地测试环境,想怎么玩都可以
服务器远端推荐使用方案三

在这里插入图片描述

当然有人说是删除数据库中除了auth_user的其他表,具体都可以尝试一下

解决方案二:

  • 删除数据库中 除了auth_user的其他表,然后重新执行数据库迁移命令。

解决方案三:

服务远端的话就别执行删库跑路命令了,解决方案如下:

settings.py文件里面注释掉admin app

INSTALLED_APPS = [
    # 'django.contrib.admin',
    ...
]

执行数据库迁移同步命令:

python manage.py makemigrations
python manage.py migrate

然后取消注释

INSTALLED_APPS = [
    'django.contrib.admin',
    ...
]

上一篇:python计算二维矩形IOU实例

栏    目:Python代码

下一篇:python smtplib模块发送SSL/TLS安全邮件实例

本文标题:Django数据库迁移报错InconsistentMigrationHistory

本文地址:http://www.codeinn.net/misctech/178605.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有