如何根據(jù)model代碼生成數(shù)據(jù)庫遷移腳本,相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
站在用戶的角度思考問題,與客戶深入溝通,找到豐鎮(zhèn)網(wǎng)站設(shè)計(jì)與豐鎮(zhèn)網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗(yàn)好的作品,建站類型包括:做網(wǎng)站、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名申請、網(wǎng)站空間、企業(yè)郵箱。業(yè)務(wù)覆蓋豐鎮(zhèn)地區(qū)。
首先編寫models.py
from django.db import models # Create your models here. class Topic(models.Model): """ 用戶學(xué)習(xí)的主題 """ text = models.CharField(max_length=200) date_added = models.DateTimeField(auto_now_add=True) def __str__(self): return self.text
(venv) D:\learning_log>python3 manage.py makemigrations learning_logs Migrations for 'learning_logs': learning_logs\migrations\0001_initial.py - Create model Topic
生成的0001_initial.py文件。
# Generated by Django 2.0.13 on 2020-08-23 15:48 from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='Topic', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('text', models.CharField(max_length=200)), ('date_added', models.DateTimeField(auto_now_add=True)), ], ), ]
然后進(jìn)行遷移并生成對應(yīng)的數(shù)據(jù)庫。
(venv) D:\learning_log>python3 manage.py migrate Operations to perform: Apply all migrations: admin, auth, contenttypes, learning_logs, sessions Running migrations: Applying learning_logs.0001_initial... OK
每當(dāng)需要修改django中的應(yīng)用管理的數(shù)據(jù)時,都采取如下三個步驟:修改models.py;對learning_logs調(diào)用makemigrations;讓Django遷移項(xiàng)目。
看完上述內(nèi)容,你們掌握如何根據(jù)model代碼生成數(shù)據(jù)庫遷移腳本的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!