Lecturer:Yan
Django
Basic
大綱
- Web framework 介紹
- Django 介紹
- pipenv 安裝
- Django 安裝
Outline
Before we start.
所以... 大家加油 ouo
然後各位要分組進行專案的部分
理論上是會做出一個 blog
Web framework 介紹
Introduction
Web framework ?
網頁框架就是別人已經設定好的一個網站模板,你可以學習它的規則,然後修改成自己需要的樣子。簡單來說就是當你開發 Web 應用程式時所用的框架。
通常會提供:
- 一個既定的程式骨架
- 強大且豐富的函式庫 ( Libraries )
常見的網頁框架
大家比較熟知的 Python 網頁框架比較
- 大而全
- 內建全套解決方案
- 注重組件的重用性、可插拔性
- 微框架
- 自由、靈活,可擴展性強
- 入門簡單
框架本身無法自行運作,開發者要將框架搭配上自己的程式,才是一個完整的應用程式。
Django 介紹
Introduction
Django
講古時間
Django Reinhardt (1910 – 1953)
Django ?
- 免費開放原始碼
- 著重快速開發、高效能
- 遵從 DRY 守則,致力於淺顯易懂和優雅的程式碼
- 使用 MTV 架構
- 是 Python 最著名的 Web Framework,可以快速開發安全和可維護的網站。
它有以下幾個特色:
DRY
Don't Repeat Yourself
- 原則是「系統中的每一部分,都必須有一個單一的、明確的、權威的代表」。
- 指的是代碼必須能夠表達所應表達的內容,但是不能含有任何重複代碼。
- 當 DRY 原則被成功應用時,一個系統中任何單個元素的修改都不需要與其邏輯無關的其他元素發生改變。
Django
實例
Django
實例
Text
Django Pony
長得有夠 像彩虹小馬 充滿少女心的吉祥物
MTV 架構介紹
Introduction
MVC
- Model : 資料的管理(例如與資料庫的溝通) 、演算法邏輯(商業邏輯) 、物件結構定義
- View : 呈現給使用者看、操作的介面
- Controller : 依據傳入的資料該怎麼運作、程式流程的控制、該回傳給使用者什麼資料等
MVC
Back to MTV.
負責資料庫
要呈現哪一個資料,
並交由 Template 呈現
最後的 HTML 呈現
Why MTV ?
使用 MTV 架構的好處:
- 避免 Spaghetti Code
- 分離前後端
- 前後端可獨立作業
- 擁有更多彈性
- 較容易維護
- 降低程式複雜度
MVC v.s. MTV
MVC | MTV |
---|---|
Model | Model (Data Access Logic) |
View | Template (Presentation Logic) |
View | View (Business Logic) |
Controller | Django itself |
這是一張畫得比較好(也比較美)的 MTV 架構圖
pipenv 安裝
Installation
Virtual environment ?
- 你的專案會擁有一個專屬的獨立 Python 環境。
- 不需要 root 權限,就可以安裝新套件。
- 方便控管不同版本的套件,不用擔心升級套件會影響到其他專案。
install pipenv
$ pip install pipenv
$ brew install pipenv
請先到 這個連結 安裝好 homebrew
for Windows
for Mac
$ cd 到你想放資料夾的地方
$ mkdir 隨便你取
建好你要當作虛擬環境的資料夾
$ cd 到資料夾
前往該資料夾
$ pipenv --three
創建 python3 虛擬環境
$ pipenv --two
如果想創建 python2 虛擬環境的話...
$ pipenv shell
$ exit
進入 / 退出虛擬環境
$ cd 到該虛擬環境所在位置
$ pipenv --rm
刪除創建的虛擬環境
Django 安裝
Installation
請確定你現在正在虛擬環境裡
確定在齁?你確定嗎?
真的?
install Django
$ pipenv install django
安裝最新的 3.0.4 版本
$ pipenv graph
確定有沒有安裝成功(查看已安裝套件的指令)
$ vi pipfile
退出的話就打 :q
如果你是用 mac 你也可以用 vi 打開 pipfile
或是打開 pipfile 看一下 package 的部分
$ pipenv uninstall 套件名稱
如果不小心裝錯要刪掉的話
$ pip list
可以先 exit 到虛擬環境外後,再輸入:
這時候你就會發現剛剛在虛擬環境裡安裝的套件,真的沒有在外面。
Thanks for listening.
References
- Andy Lu. (2018). 玩 Django — Part 3 (MTV 架構). Retrieved from https://reurl.cc/D99R9Q
- zhaoolee. (2018). Pipenv一键搭建python虚拟环境. Retrieved from https://www.jianshu.com/p/1441169b3dbe
- Toyo. (2018). [C#][.Net MVC] 02. 什麼是MVC架構. Retrieved from https://progressbar.tw/posts/95
- bessyhuang. (2019). Django 網站開發. Retrieved from https://hackmd.io/kwk4rdTjQli6qHObtpn68g?view#%E8%AA%B2%E7%A8%8B%E7%B0%A1%E4%BB%8B%E8%88%87%E7%9B%AE%E6%A8%99
Django basic - 3/15
By oneone
Django basic - 3/15
SIRLA 2020 Django Tutorial
- 162