1. 程式人生 > 程式設計 >django中的資料庫遷移的實現

django中的資料庫遷移的實現

Django是用python寫的web開發框架,其特點是:

  1.重量級框架,內部封裝了很多的功能元件,使開發變的簡便快速,

  2.MVT模式:前後端分離,高內聚低耦合,m:model,與mvc中的m功能相同,負責和資料庫互動,進行資料處理,v:view,與mvc中的c功能相同,接收請求,進行業務處理,返回應答,                t:template,與mvc中的v功能相同,負責封裝構造要返回的html。

orm:物件關係對映,主要實現模型物件到資料庫資料的對映。

1.首先要在models.py中建立模型類,示例:

django中的資料庫遷移的實現

2.在settings.py檔案中把models.py所在的子應用也要加入配置項,否則orm資料庫無法別識別到

django中的資料庫遷移的實現

3.將模型類在admin.py中註冊

django中的資料庫遷移的實現

4.接下來就是資料庫遷移的命令

  python manage.py migrate # 根據資料庫遷移檔案生成對應SQL語句並執行
  # 初次執行時為了先把預設Django需要的資料庫創建出來
  python manage.py makemigrations # 建立資料庫遷移檔案
  # 這次執行是為了建立app中的class模型類的遷移檔案
  python manage.py
  # 將新新增的模型類遷移檔案生成對應SQL並執行,實際創建出來對應的表

Django中預設的資料庫實sqlite3

django中的資料庫遷移的實現

sqlite是一款輕型的資料庫,佔用資源特別小,大約幾百k記憶體就夠了,它能支援windows/linux/unix等主流的作業系統,儲存在磁碟檔案中的一個完整的資料庫,比一些流行的資料庫在大部分普通資料庫操作要快,簡單,輕鬆的api,獨立:沒有額外依賴,支援多種開發語言,以二進位制形式儲存在本地,負載量在10萬以下時效能更佳,省掉了對資料庫伺服器的遠端連線甚至會更快

ps:生成遷移和執行遷移

django框架就是一款強大的ORM框架,可以不需要寫sql語句就能進行應用開發。

首先需要生成遷移檔案,這就“相當於”生成sql語句指令碼。

python manage.py makemigrations 

這樣就生成了遷移檔案,在相對應的專案應用中可以看到migrations資料夾下,生成一個新檔案

operations = [

    migrations.CreateModel(

      name='BookInfo',fields=[

        ('id',models.AutoField(verbose_name='ID',serialize=False,auto_created=True,primary_key=True)),('btitle',models.CharField(max_length=20)),('bpub_date',models.DateTimeField()),],),migrations.CreateModel(

      name='HeroInfo',('hname',('hgender',models.BooleanField()),('hcontent',models.CharField(max_length=100)),('hBook',models.ForeignKey(to='booktest.BookInfo')),]

django會預設為每一個表生成一個主鍵id。

然後,執行遷移。這樣才會生成資料庫表。

python manage.py migrat

到此這篇關於django中的資料庫遷移的實現的文章就介紹到這了,更多相關django 資料庫遷移內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!