環境: python3.7, django2.1, windows10, pycharm2018.2]
上一篇內容創建一個最簡單界面,這一節將介紹數據庫操作
1. 簡介
django 自帶有ORM(對象關係映射),不需要直接操作數據庫和編寫SQL語句,所有的數據庫操作均可以通過python代碼來實現
2. 配置數據庫
django 2.1默認使用SQLite數據庫,這是一種無服務器的輕量型數據庫,所有信息都存儲在一個文件中
使用這個默認數據庫無需額外配置,如果需要修改,到settings.py中修改相應部分
# Database
# https://docs.djangoproject.com/en/2.1/ref/settings/#databases
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
3. 建表
- 第一步
在ORM中每個python類就可以對應一張數據表,因此建表的操作通過編寫類來實現
接着上一篇中的內容,打開models.py,創建一個文章類Article
,這個類必須繼承自models.Model
。
隨便往裏面添加幾個字段,例如title
和content
class Article(models.Model):
title = models.CharField(max_length=32, default='Title')
content = models.TextField(null=True)
這裏我沒有手動設置主鍵,django會爲我們自動創建一個自增字段id
作爲主鍵
- 第二步
在CMD中(Linux使用終端),使用manage.py來完成數據庫遷移(建表)操作
- 生成遷移文件
manage.py makemigrations myblog
- 數據庫遷移(建表)
manage.py migrate
這樣就完成了建表操作