基礎
1. 簡介
Django
是一個由Python寫成的開放原始碼的重量級Web應用框架。Django
的目的是使常見的Web開發任務,快速和容易
2. 特點
-
MVC
開發模式 -
內建進行快速web開發所需的各種元件
-
利用
ORM
(物件關係對映)機制來定義資料庫,使開發人員可以構造出獨立於具體資料庫引擎的web應用 -
內建後臺管理web應用
-
內建web Server,開發人員無需安裝任何web Server就可以進行各種web應用的開發和測試
-
具有靈活而強大的自定義
url
系統 -
內建多語種支援,可以方便的構建多國語言的web應用
3. MTV設計模式
- 資料模型 Model 負責與資料庫互動
- 模板 Template 負責呈現內容到瀏覽器
- 檢視 Views 負責接收請求、獲取資料、返回結果
資料取出順序 models->views->templates 資料層->邏輯檢視層->前端模板層
4. 安裝
pip install Django
git clone https://github.com/django/django.git
在pycharm中開啟 file-->settings-->Project-->Project Interpreter
5. 基本目錄
mysite #Django專案
|-- manage.py #專案管理器
|-- mysite #專案容器
|-- __init__.py #空檔案
|-- settings.py #Django專案的配置檔案
|-- urls.py #路由分發功能,urls中的路徑與檢視函式一一對映
|-- wsgi.py #Web Server Gatevay Interface Web伺服器的閘道器介面
|-- app_name #應用
|-- migrations #資料移植(遷移)模組
|-- models.py #與資料庫互動的檔案
|-- views.py #存放檢視函式
|-- admin.py #該應用後臺管理系統配置
|-- apps.py #該應用的一些配置 1.9以後自動生成
|-- tests.py #自動化測試模組 在這裡編寫測試指令碼
Django的基本命令
命令 | 解釋 |
---|---|
python -m django --version | 檢視Django版本 |
django -admin startproject mysite | 建立一個mysite專案 |
python manage.py startapp app01 | 建立應用程式 |
python manage.py runserver [8000] | 啟動程式 |
python manage.py makemigrations | 進行建立模型變化遷移 |
python manage.py migrate | 執行應用變化到資料庫 |
python manage.py syncdb | 同步到資料庫 |
python manage.py flush | 清空資料庫{保留資料表} |
python manage.py createsuperuser | 建立管理員使用者 |
python manage.py changepassword username | 修改使用者密碼 |
settings.py配置檔案
# BASE_DIR 專案根目錄路徑
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
INSTALLED_APPS = [ # 程式定義檔案
'django.contrib.admin',
''''''
]
ALLOWED_HOSTS = ["*"] # 白名單
MIDDLEWARE = [ # 中介軟體
'django.middleware.security.SecurityMiddleware',
''''''
]
TEMPLATES = [ # 模板路徑
''''''
]
DATABASES = { # 資料庫配置
''''''
}
LANGUAGE_CODE = 'zh-hans' # 語言
TIME_ZONE = 'Asia/Shanghai' # 時區
STATIC_URL = '/static/' # 靜態檔案
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]