今天要實際去為我們的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資料表~