Django 從零開始的新手任務


建立時間: 2022年5月29日 08:38
更新時間: 2024年2月26日 01:24

說明

本篇說明 Django 要渲染 Hello World! 到瀏覽器之前,所要做的事
剛建立 Django 除了跑出 Django 專案之外
你還需要做一些設定,做完這些設定之後,才算完成新手任務
如需詳細的內容,需自行到官網查看

安裝 Django

可以到 django 官方文件 看如何安裝
如果你是 mac 系統,可以很方便地用 Homebrew 行雲流水地安裝
以下沒有安裝伺服器,因為範例會在本機執行

終端

安裝 python
$ brew install python

請確認 python 版本,系統可能同時存在 python2 和 python3
如果最新版要用 python3 指令才可以看到
後面的 python 指令,請替換成 python3
$ python --version
$ python3 --version

安裝 Django
$ python -m pip install Django

查看 pip 安裝清單,確認 Django 是否安裝
$ python -m pip list

安裝資料庫(可選)

一開始專案會使用 sqlite,在 mac 系統預設應該會安裝
若有需要使用資料庫,可以考慮 PostgreSQL
我看到官方文件有一篇在講解 PostgreSQL 特有模型字段 可能會比較好用

終端

# 使用 homebrew 安裝 PostgreSQL
$ brew install postgresql

# 啟動 postgresql server,預設 port 應該是 5432
$ brew services start postgresql

# 預設可以使用 postgres 連接
$ psql postgres

# 直接下指令建立資料庫
$ createdb my_db

# 建立使用者
# -s 超級使用者
$ createuser -s joe

建立 Django 專案

安裝完 Django 後,就可以用指令建立建立 Django 專案
專案名稱請自行更換
$ django-admin startproject 專案名稱

建立應用程式

每個專案可以有多個應用程式,在這裡先建立一個
應用程式名稱請自行更換
$ python manage.py startapp 應用程式名稱

每個應用程式都有自己的 templates, static, view, urls…等等,與本篇接下來講 templates, static 不同,你可以想成專案級別的 templates 和應用程式級別的 templates,應用程式級別的 templates 只適用於此應用程式,專案級別的 templates 適用於專案底下所有的應用程式。

詳細的應用程式設定請參考 Django 建立一個 app 要做的事情

建立 templates 目錄

這個是模板目錄,你可能比較知道 MVC (Model-View-Controller) 架構
但 Django 是 MTV (Model-Template-View) 架構
你可以把 template 想成 MVC 的 view

終端

切換到專案目錄
$ cd path/to/your_project

建立 templates 目錄
$ mkdir templates

右鍵新增資料夾也可以

建立 static_files 目錄

這個目錄是用來儲存靜態檔的,像是 css, javascript, image 等等

終端

切換到專案目錄
$ cd path/to/your_project

建立 static_files 目錄
$ mkdir static_files

建立 migration

migration 就像是資料庫的版本控制
你做的每一個資料庫的更動,都會記錄在 migration 檔裡
資料庫的更動是新增 table 之類的
如果是 table 新增一筆資料那個不算是資料庫的更動

終端

切換到專案目錄
$ cd path/to/your_project

建立 migration
$ python3 manage.py makemigrations

模型與資料庫同步,雖然剛建立專案還沒用到模型(Model)
但還是可以先同步專案內建的模型
$ python3 manage.py migrate

專案加入剛剛建立的應用程式

在 setting 檔加入 app

/path/to/your_project/your_project/settings.py

# Application definition

INSTALLED_APPS = [
    # 略
    'your_app',
]

設定模板路徑

在 setting 檔設定模板路徑

/path/to/your_project/your_project/settings.py

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [BASE_DIR / 'templates'],
        # 略
    },
]

設定語系

在 setting 檔設定語系,語系依你的需求而設定

/path/to/your_project/your_project/settings.py

# 繁體中文
LANGUAGE_CODE = 'zh-hant'
# 台北時區
TIME_ZONE = 'Asia/Taipei'

設定靜態檔案路徑

在 setting 檔設定靜態檔案路徑

/path/to/your_project/your_project/settings.py

STATIC_ROOT = BASE_DIR / 'static'
STATIC_URL = 'static/'
STATICFILES_DIRS = [
    BASE_DIR / 'static_files',
]

參考

Python 架站特訓班:Django 3 最強實戰, 2/e (附影音/範例)

觀看次數: 2265
djangopython安裝新手任務
按讚追蹤 Enjoy 軟體 Facebook 粉絲專頁
每週分享資訊技術

一杯咖啡的力量,勝過千言萬語的感謝。

支持我一杯咖啡,讓我繼續創作優質內容,與您分享更多知識與樂趣!