今天要實際去為我們的Django Project
建立資料庫資料表。
這邊先複習一下,每個model
都是database
裡面的一張資料表。
此外,Django
預設採用的是SQLite Database
,所以可以在外層的myworld
資料夾下看到一個名為db.sqlite3
的檔案。
建立資料表
為了建立資料表,我們必須去修改members
下面的models.py
這個檔案。
查看models.py
會發現它基本上是空的 :
之前有稍微提到在Django
裡面,model
就是一個個的Python Class
。
下面新增一個名為Members
的Class
,它同時也是一個model
(資料表)。
1 | from django.db import models |
- class Members(models.Model)
- 表示
Members
繼承自models.Model
,也就是Members
是一個名為Members
的model
的意思 (有點冗長…)
- 表示
- firstname = models.CharField(max_length=255)
- 為資料表建立名為
firstname
的字串欄位並限制字串最大長度為255
- 為資料表建立名為
- lastname = models.CharField(max_length=255)
- 為資料表建立名為
lastname
的字串欄位並限制字串最大長度為255
- 為資料表建立名為
做完上面的操作,我們實際上還沒有真正在資料庫建立名為Members
的資料表。
實際建立資料表
要真正在資料庫建立這張資料表,我們需要繼續按步驟往下做 :
-
打開
CMD
並切換到虛擬環境(python venv
)的資料夾路徑下(實際
venv
路徑不一定會跟我一樣喔!) -
輸入以下指令啟動虛擬環境
1
Scripts\activate.bat
啟動虛擬環境後結果如下:
-
接著切換路徑到
Django Project
所在的資料夾下 -
執行以下指令產生一個檔案紀錄對
models
的變更
(產生的檔案會被放在migrations
資料夾下)py manage.py makemigrations members
-
接著執行以下指令產生建立資料表的
SQL
程式碼並執行py manage.py migrate
做完以上5步就成功在資料庫建立Members
這張資料表囉!
而實際執行的SQL
程式碼如下 :
1 | CREATE TABLE "members_members" ( |
明天會學到如何新增
Record
(資料表紀錄)到Members
資料表~