一篇文章帶你自學(xué)python Django
1. Django簡介
Django是什么?
Django 是用Python開發(fā)的一個(gè)免費(fèi)開源的Web框架,可以用于快速搭建高性能,優(yōu)雅的網(wǎng)站!采用了MVC->MVT的框架模式。
Django前景
在Python中,與web開發(fā)相關(guān)的包有13045個(gè),其中django就占了9091個(gè),約70%。同時(shí),Python中活躍的web框架多達(dá)54,其中最活躍的包括Django,flask等。Django便是其中的佼佼者,截至目前,已經(jīng)有超過5200個(gè)中大型網(wǎng)站使用Django開發(fā)。比較知名的使用Django的公司:
國內(nèi):豆瓣、知乎等
國外:Google、YouTube(油管)、Instagram(照片墻)->facebook等
Django框架核心
1、一個(gè)面向?qū)ο蟮挠成淦?,用作?shù)據(jù)模型(以 Python 類的形式定義)和關(guān)系型數(shù)據(jù)庫間的介質(zhì);
2.、一個(gè)基于正則表達(dá)式的 URL 分發(fā)器(路由分發(fā)器);
3、一個(gè)視圖系統(tǒng),用于處理請(qǐng)求;
4、一個(gè)模板系統(tǒng)(HTML、css、js)。
2. 設(shè)計(jì)模式
MVT模式
Django的MVT設(shè)計(jì)模式由Model(模型), View(視圖) 和Template(模板)三部分組成,分別對(duì)應(yīng)單個(gè)app目錄下的models.py, views.py和templates文件夾。它們看似與MVC設(shè)計(jì)模式不太一致,其實(shí)本質(zhì)是相同的。Django的MVT設(shè)計(jì)模式與經(jīng)典的MVC對(duì)應(yīng)關(guān)系如下。
- Django Model(模型): 與MVC中的模型Model類似
- Django View(視圖): 類似于MVC中的控制器Controller,負(fù)責(zé)根據(jù)用戶請(qǐng)求從數(shù)據(jù)庫中讀取數(shù)據(jù),指定向y用戶展示數(shù)據(jù)的方式(網(wǎng)頁或json數(shù)據(jù)),同時(shí)也能處理用戶提交過來的數(shù)據(jù)。
- Django Template(模板): 類似于MVC中的視圖View,用于呈現(xiàn)Django View傳遞過來的數(shù)據(jù),也決定了用戶界面的外觀。同時(shí)也包含了表單,用于收集用戶傳遞的數(shù)據(jù)。
Django MVT設(shè)計(jì)模式中最重要的是視圖(view),view會(huì)同時(shí)與模型(model)和模板(templates)進(jìn)行交互。當(dāng)用戶發(fā)來一個(gè)請(qǐng)求(request)時(shí),Django會(huì)對(duì)請(qǐng)求頭信息進(jìn)行解析,解析出用戶需要訪問的url地址,然后根據(jù)路由urls.py中的定義的對(duì)應(yīng)關(guān)系把請(qǐng)求轉(zhuǎn)發(fā)到相應(yīng)的視圖處理。視圖會(huì)從數(shù)據(jù)庫讀取需要的數(shù)據(jù),指定渲染模板,最后返回響應(yīng)數(shù)據(jù)。

3. 開發(fā)環(huán)境簡介
1.系統(tǒng)支持:linux(推薦,項(xiàng)目常用),mac,windows
unix
推薦使用linux:linux兼容性比mac與windows更加優(yōu)秀
2.linux系統(tǒng)
- 虛擬機(jī)中安裝linux系統(tǒng)(推薦使用)
- 使用云服務(wù)器
- 安裝雙系統(tǒng)
3.開發(fā)環(huán)境支持
- python
- pip
- virtualenv (虛擬環(huán)境)
- mysql
注:為什么開發(fā)時(shí)需要在虛擬環(huán)境里:
4. 干凈,環(huán)境與環(huán)境之間是相互獨(dú)立的。eg:爬蟲項(xiàng)目放在環(huán)境1,Django放在環(huán)境2中,那么兩個(gè)項(xiàng)目中的包的使用不會(huì)相互沖突。
4.創(chuàng)建虛擬環(huán)境
4.1.首先安裝管理環(huán)境的包以及虛擬環(huán)境包
4.1.1 安裝環(huán)境管理包virtualenvwrapper

注:pycharm的編輯器的終端與cmd終端是一樣的,因此在pycharm中進(jìn)行安裝操作相同
4.1.2 安裝虛擬環(huán)境包virtualenv

4.1.3 查看pip list,檢查是否安裝成功

檢查存在以上兩個(gè)包,因此安裝成功。
4.2 對(duì)虛擬環(huán)境的操作
4.2.1 創(chuàng)建虛擬環(huán)境
創(chuàng)建虛擬環(huán)境命令為mkvirtualenv 創(chuàng)建環(huán)境名

(django2108_1)表示已經(jīng)進(jìn)入到環(huán)境中。
4.2.2 查看虛擬環(huán)境中的包,并安裝Django包

4.2.3 退出虛擬環(huán)境
命令為:deactivate

4.2.4 查看創(chuàng)建所有虛擬環(huán)境
命令為:workon

4.2.5 進(jìn)入指定的虛擬環(huán)境
命令為:workon 已創(chuàng)建的虛擬環(huán)境

4.2.6 刪除虛擬環(huán)境
命令為:rmvirtualenv 虛擬環(huán)境名
注:想要?jiǎng)h除虛擬環(huán)境,首先要退出要?jiǎng)h除的虛擬環(huán)境

4.3 更換虛擬環(huán)境中的路徑(創(chuàng)建虛擬環(huán)境的路徑默認(rèn)在c盤)

根據(jù)自己選擇,通過創(chuàng)建系統(tǒng)變量WORKON_HOME,將環(huán)境變量存儲(chǔ)到不同的路徑。
5.項(xiàng)目創(chuàng)建與服務(wù)啟動(dòng)
5.1創(chuàng)建項(xiàng)目
5.1.1 再次創(chuàng)建虛擬環(huán)境

5.1.2 在磁盤中創(chuàng)建文件夾用來存放項(xiàng)目

5.1.3 打開存放項(xiàng)目的文件夾,作為項(xiàng)目文件

5.1.4 添加環(huán)境變量

5.1.5 在新的環(huán)境中安裝django包

5.1.6 創(chuàng)建項(xiàng)目
命令為:django-admin startproject 項(xiàng)目名

5.1.7 創(chuàng)建子應(yīng)用

首先cd到創(chuàng)建的項(xiàng)目路路徑中,其次輸入python manage.py startapp 子應(yīng)用名稱,創(chuàng)建子應(yīng)用。
5.1.8 注冊(cè)子應(yīng)用

5.2 啟動(dòng)服務(wù)
方式一:直接在終端輸入命令python manage.py runserver

方式二:通過設(shè)置Python中終端執(zhí)行參數(shù)

方式三:通過設(shè)置Django server(推薦使用),注:需要設(shè)置根目錄和配置文件

5.3.打開網(wǎng)頁,查看結(jié)果

總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注本站的更多內(nèi)容!
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。
關(guān)注官方微信