詳解重置Django migration的常見方式
根據(jù)django官方文檔建議,開發(fā)過程中會把生成的migrations提交到git中。由于各種原因,會有一些場景需要重置migrations,故總結(jié)一些常用場景及解決辦法。
場景一
不考慮數(shù)據(jù)庫數(shù)據(jù),可以完全清空數(shù)據(jù)庫。
步驟:
刪除所有migrations
find . -path "*/migrations/*.py" -not -name "__init__.py" -delete find . -path "*/migrations/*.pyc" -delete
刪除數(shù)據(jù)庫
重新生成migrations
python manage.py makemigrations python manage.py migrate
場景二
有時候我們會直接導(dǎo)入完整的數(shù)據(jù)庫,包括數(shù)據(jù),這種情況下就不能簡單的清空數(shù)據(jù)庫。
這時我們的目的就是:清空數(shù)據(jù)庫的migration history,保證以后的migrate能正常使用,但要保留其他數(shù)據(jù)。
步驟:
從數(shù)據(jù)庫中刪除所有非0001_initial的migration history
DELETE FROM django_migrations WHERE app IN ('your','app','labels') AND name != '0001_initial'
使用migrate命令回滾0001_initial的migration history
python manage.py migrate --fake your zero python manage.py migrate --fake app zero python manage.py migrate --fake labels zero
重新生成0001_initial,如果能保證已有0001_initial已是最新的,可跳過此步
find . -path "*/migrations/*.py" -not -name "__init__.py" -delete find . -path "*/migrations/*.pyc" -delete python manage.py makemigrations
在數(shù)據(jù)庫中生成新的0001_initial記錄
python migrate --fake-initial
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
centos 自動運行python腳本和配置 Python 定時任務(wù)
這篇文章主要介紹了centos 自動運行python腳本和配置 Python 定時任務(wù),文章內(nèi)容介紹詳細(xì),需要的小伙伴可以參考一下,希望對你有所幫助2022-03-03MacOS?Pytorch?機(jī)器學(xué)習(xí)環(huán)境搭建方法
這篇文章主要介紹了MacOS?Pytorch?機(jī)器學(xué)習(xí)環(huán)境搭建,學(xué)習(xí) Pytorch?,首先要搭建好環(huán)境,這里將采用?Anoconda + Pytorch + PyCharm 來一起構(gòu)建 Pytorch 學(xué)習(xí)環(huán)境,需要的朋友可以參考下2023-02-02python中csv文件創(chuàng)建、讀取及修改等操作實例
很多程序在處理數(shù)據(jù)時都會碰到csv這種格式的文件,下面這篇文章主要給大家介紹了關(guān)于python中csv文件創(chuàng)建、讀取及修改等操作的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-05-05Dlib+OpenCV深度學(xué)習(xí)人臉識別的方法示例
這篇文章主要介紹了Dlib+OpenCV深度學(xué)習(xí)人臉識別的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05Python生成可執(zhí)行文件之PyInstaller庫的使用方式
PyInstaller是一個十分有用的第三方庫,通過對源文件打包,Python程序可以在沒有安裝Python的環(huán)境中運行,也可以作為一個獨立文件方便傳遞和管理,下面這篇文章主要給大家介紹了關(guān)于Python生成可執(zhí)行文件之PyInstaller庫的使用方式,需要的朋友可以參考下2022-04-04