Python 的 web 開發框架最流行的有三個,Django, Flask, Tornado
Django 可以說是生態最完善的一個框架了,使用 Django 開發甚至會感覺在學一門新的語言
Flask 之前也有嘗試過,小巧靈活,但是程式設計師要考慮的細節太多了,反而是另外一種負擔
Tornado 接觸的就比較少了,異步框架,我所了解的主要是應用在 jupyter 生態
環境部署和新建專案
Django 的環境就不細說了,可以自行搜索
我們這次要開發的是一個用於打卡系統,主要功能包括發布學習內容,學生管理,制定學習計劃,學生打卡
不妨把專案名叫做 easy_talk
,我們用 Django 來實現後台,首先新建專案
django-admin startproject easy_talk_backend
此時就建立了一個 Django 專案,進入 ./easy_talk_backend
目錄之後,新建一個 app
在 Django 中,app 是一種組織程式碼的方式。每個 Django 專案都可以由多個 app 組成,每個 app 負責處理專案中特定的功能。通常一個 app 會包含以下內容:
- models.py:定義 app 的資料模型。
- views.py:處理使用者請求並返回回應。
- urls.py:定義 app 的 URL 配置。
- templates/:存放 HTML 模板。
- static/:存放 CSS、JavaScript 等靜態檔案。
使用 app 的好處是可以使程式碼更易於組織、維護和重用,可以將多個 app 輕鬆地組合成一個更大的專案。
新建 app,就叫 study
模組吧
python manage.py startapp study
這時候,./easy_talk_backend/study
目錄下就是該 app 對應的程式碼呢,包含 url、視圖、model、html 等
需要修改 ./easy_talk_backend/settings.py
,註冊我們的模組,
INSTALLED_APPS = [
'django.contrib.admin',
'...'
'study',
]
預設 Django 會使用 sqlite 來存儲資料,我們也不做修改,直接運行來初始化 db
python manage.py makemigrations
python manage.py migrate
新建一個超級使用者
python manage.py createsuperuser
運行我們的專案
python manage.py runserver
此時訪問就能看到 Django 預設的首頁了,訪問 /admin
路由可以登錄到 Django 自帶的後台,用我們剛剛創建的使用者和密碼即可登錄