Django數(shù)據(jù)庫(kù)遷移報(bào)錯(cuò)InconsistentMigrationHistory
Django在執(zhí)行python manage.py makemigrations的時(shí)候一切正常

但是執(zhí)行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中有一個(gè)原生的User模型類,admin的模型依賴這個(gè)模型類,由于前面一個(gè)應(yīng)用中的模型類User繼承了AbstractUser類,所以提示這個(gè)錯(cuò)誤。
解決方案一:
- 把之前數(shù)據(jù)庫(kù)中生成的所有表刪除,重新進(jìn)行遷移
- 執(zhí)行刪庫(kù)命令(服務(wù)器遠(yuǎn)端慎用):
drop database [數(shù)據(jù)庫(kù)名] - 然后然后重新創(chuàng)建數(shù)據(jù)庫(kù):
create database [數(shù)據(jù)庫(kù)名]
我是以上方案就解決了
PS:
因?yàn)槲沂潜镜販y(cè)試環(huán)境,想怎么玩都可以
服務(wù)器遠(yuǎn)端推薦使用方案三

當(dāng)然有人說(shuō)是刪除數(shù)據(jù)庫(kù)中除了auth_user的其他表,具體都可以嘗試一下
解決方案二:
- 刪除數(shù)據(jù)庫(kù)中 除了auth_user的其他表,然后重新執(zhí)行數(shù)據(jù)庫(kù)遷移命令。
解決方案三:
服務(wù)遠(yuǎn)端的話就別執(zhí)行刪庫(kù)跑路命令了,解決方案如下:
在settings.py文件里面注釋掉admin app
INSTALLED_APPS = [
# 'django.contrib.admin',
...
]
執(zhí)行數(shù)據(jù)庫(kù)遷移同步命令:
python manage.py makemigrations python manage.py migrate
然后取消注釋
INSTALLED_APPS = [
'django.contrib.admin',
...
]
到此這篇關(guān)于Django數(shù)據(jù)庫(kù)遷移報(bào)錯(cuò)InconsistentMigrationHistory的文章就介紹到這了,更多相關(guān)Django數(shù)據(jù)庫(kù)遷移報(bào)錯(cuò)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python3學(xué)習(xí)urllib的使用方法示例
本篇文章主要介紹了Python3學(xué)習(xí)urllib的使用方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-11-11
Python日期時(shí)間模塊datetime詳解與Python 日期時(shí)間的比較,計(jì)算實(shí)例代碼
python中的datetime模塊提供了操作日期和時(shí)間功能,本文為大家講解了datetime模塊的使用方法及與其相關(guān)的日期比較,計(jì)算實(shí)例2018-09-09
Pytorch中.detach()與.data的用法小結(jié)
這篇文章主要介紹了Pytorch中.detach()與.data的用法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-07-07
Python實(shí)現(xiàn)的用戶登錄系統(tǒng)功能示例
這篇文章主要介紹了Python實(shí)現(xiàn)的用戶登錄系統(tǒng)功能,涉及Python流程控制及字符串判斷等相關(guān)操作技巧,需要的朋友可以參考下2018-02-02
基于Python編寫簡(jiǎn)易版的天天跑酷游戲的示例代碼
這篇文章主要介紹了如何利用Python編寫一個(gè)簡(jiǎn)易版的天天跑酷游戲,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定幫助,需要的可以參考一下2022-03-03
Python驅(qū)動(dòng)ansys執(zhí)行apdl文件的代碼示例
在Python中驅(qū)動(dòng)ANSYS執(zhí)行APDL(ANSYS Parametric Design Language)文件,可以通過(guò)使用subprocess模塊來(lái)調(diào)用ANSYS的可執(zhí)行文件,并傳遞APDL文件作為參數(shù),本文給大家介紹了一個(gè)詳細(xì)的代碼示例,需要的朋友可以參考下2024-11-11

