django實(shí)現(xiàn)將修改好的新模型寫(xiě)入數(shù)據(jù)庫(kù)
大家在用django寫(xiě)完模型代碼后,肯定都迫不及待的將模型翻譯為遷移文件然后migrate吧,后來(lái)發(fā)現(xiàn)以后模型要修改的話再python manage.py makemigrations app加migrate后結(jié)果發(fā)現(xiàn)并不管用,數(shù)據(jù)庫(kù)并不會(huì)作出任何修改,由于本人也是新手,于是在網(wǎng)上看來(lái)下資料,并且分析了下,發(fā)現(xiàn)了一種粗暴的解決方法:
(1)刪除原來(lái)的遷移文件
目錄如下項(xiàng)目名.app.migrations
(2)重新建立遷移文件
即重新python manage.py makemigrations app
(3)刪除數(shù)據(jù)庫(kù)記錄
進(jìn)入項(xiàng)目數(shù)據(jù)庫(kù),找到django_migrations表,把a(bǔ)pp為你app名字的那行記錄刪除,
(4)刪除相關(guān)app的舊表
將關(guān)于你修改后的app的表全部刪除
(5)將修改后的表加入數(shù)據(jù)庫(kù)
再回來(lái)進(jìn)行migrate,你會(huì)發(fā)現(xiàn)你修改后的模型已經(jīng)成功的導(dǎo)入數(shù)據(jù)庫(kù)。
如果各位大神有更加好的方法,歡迎分享!
補(bǔ)充知識(shí):python Django 初始化數(shù)據(jù)到數(shù)據(jù)庫(kù)的操作
引言:開(kāi)發(fā)中經(jīng)常會(huì)遇到一些數(shù)據(jù)在程序的運(yùn)行時(shí)就要在數(shù)據(jù)庫(kù)中存在,然后就對(duì)Django的數(shù)據(jù)初始化做一個(gè)簡(jiǎn)單的分享
1.首先在我們的app下創(chuàng)建對(duì)應(yīng)的models,然后在models里面進(jìn)行表的創(chuàng)建
2.對(duì)應(yīng)上面的表,我們想要為這個(gè)表初始化進(jìn)去兩條數(shù)據(jù)
name:1 script_content:‘11111'
name:2 script_content:‘22222'
3.然后進(jìn)行常規(guī)的表結(jié)構(gòu)創(chuàng)建操作,在命令行運(yùn)行python manage.py makemigrations + 自己的app名字
4.然后會(huì)看到在對(duì)應(yīng)的app創(chuàng)建一個(gè)migrations的目錄
5.根據(jù)自己的的遷移文件初始化自己的數(shù)據(jù)到數(shù)據(jù)庫(kù),這時(shí)在命令行運(yùn)行,python manage.py makemigrations --enmpty + 自己的app名字
6.然后會(huì)在migrations的目錄下生成一個(gè)文件 如下圖0002開(kāi)頭的文件:
7.然后在上面新生成的文件里面編寫(xiě)一下兩個(gè)函數(shù)代碼
然后在文件中添加
然后在命令行執(zhí)行,python manage.py migrate
這時(shí)候數(shù)據(jù)庫(kù)中就有了初始化數(shù)據(jù)
大概整個(gè)過(guò)程就是這樣的,完成了django的數(shù)據(jù)的初始化
以上這篇django實(shí)現(xiàn)將修改好的新模型寫(xiě)入數(shù)據(jù)庫(kù)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Flask創(chuàng)建并運(yùn)行數(shù)據(jù)庫(kù)遷移的實(shí)現(xiàn)過(guò)程
Flask創(chuàng)建并運(yùn)行數(shù)據(jù)庫(kù)遷移的過(guò)程是一個(gè)涉及多個(gè)步驟的操作,旨在幫助開(kāi)發(fā)者在開(kāi)發(fā)過(guò)程中管理數(shù)據(jù)庫(kù)模式的變化,而不需要手動(dòng)地刪除和重建數(shù)據(jù)庫(kù)表,從而避免數(shù)據(jù)丟失,以下是一個(gè)詳細(xì)的步驟說(shuō)明,需要的朋友可以參考下2024-09-09如何用VScode配置Python開(kāi)發(fā)環(huán)境
這篇文章主要介紹了如何用VScode配置Python開(kāi)發(fā)環(huán)境,vscode有很多優(yōu)點(diǎn),用VScode來(lái)編寫(xiě)Python,也是相當(dāng)?shù)暮糜玫?需要的朋友可以參考下2023-03-03Python函數(shù)調(diào)用的幾種方式(類(lèi)里面,類(lèi)之間,類(lèi)外面)
本文主要介紹了Python函數(shù)調(diào)用的幾種方式(類(lèi)里面,類(lèi)之間,類(lèi)外面),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07pygame開(kāi)發(fā):馬賽邏輯小游戲的代碼實(shí)現(xiàn)
這篇文章主要介紹了pygame開(kāi)發(fā),通過(guò)本文,您可以使用pygame開(kāi)發(fā)一個(gè)馬賽邏輯小游戲~有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-09-09Python通過(guò)兩個(gè)dataframe用for循環(huán)求笛卡爾積
這篇文章主要介紹了Python通過(guò)兩個(gè)dataframe用for循環(huán)求笛卡爾積,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04torch.optim優(yōu)化算法理解之optim.Adam()解讀
這篇文章主要介紹了torch.optim優(yōu)化算法理解之optim.Adam()解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11python中sql解析庫(kù)sqlparse基本操作指南
sqlparse是用于Python的非驗(yàn)證SQL解析器,它提供了對(duì)SQL語(yǔ)句的解析,拆分和格式化的支持,這篇文章主要給大家介紹了關(guān)于python中sql解析庫(kù)sqlparse基本操作指南的相關(guān)資料,需要的朋友可以參考下2024-08-08