使用python開發(fā)web中,使用Django,使你能夠以最小的代價構(gòu)建和維護(hù)高質(zhì)量的Web應(yīng)用。在Python各種web框架中,Django的文檔最完善,雖然django也有自己的部分缺點,但是用它來快速開發(fā)一些Web運用是很不錯的。
想要了解django,我們可以先了解一下當(dāng)一個url請求過來后django是怎么工作的,是怎么返回我們的請求內(nèi)容的。
django的所有開始都在settings文件。當(dāng)開始運行django服務(wù)的時候,django會在當(dāng)前運行目錄下找到settings文件。settings文件包含了django的所有的配置信息。
當(dāng)在瀏覽器輸入URL后,Django接受到請求,然后會在 settings文件中找到ROOT_URLCONF ,根據(jù)ROOT_URLCONF 的設(shè)置裝載 URLconf 。 然后按順序逐個匹配 URLconf 里的 URLpatterns,直到找到一個匹配的。 當(dāng)找到這個匹配 的 URLpatterns 后就調(diào)用相關(guān)聯(lián)的 view視圖函數(shù),視圖函數(shù)返回一個HttpResponse,Django 轉(zhuǎn)換 HttpResponse 為一個適合的 HTTP response, 以 Web page 顯示出來。至此,就是django接受一個請求之后所走的基本流程。
當(dāng)然,在正常的請求流程中,所有的請求返回都是由中間件完成的。中間件,就是處理HTTP的request和response的。大致程序流程如:
django是mvt模式,其中v就是這個顯示邏輯部分,對于一個簡單的django應(yīng)用,一般包含4個Python的文件,(models.py ,views.py , urls.py ) 和html模板文件 。
models.py 文件主要用一個 Python 類來描述數(shù)據(jù)表。 稱為 模型(model) 。 運用這個類,你可以通過簡單的 Python 的代碼來創(chuàng)建、檢索、更新、刪除 數(shù)據(jù)庫中的記錄而無需寫一條又一條的SQL語句,當(dāng)然你也可以選擇寫原生的sql語句。
views.py文件包含了頁面的業(yè)務(wù)邏輯。view文件里面一般包含大量的函數(shù),這些函數(shù)也成為視圖函數(shù)。簡單來講,view函數(shù)可以說是接收httprequest對象,然后處理,返回response的主體函數(shù)。在Django處理一些簡單的邏輯關(guān)系的時候,可以用直接用函數(shù)模式來進(jìn)行處理。
如上,函數(shù)接收request為參數(shù),中間隨便處理一些邏輯,然后把內(nèi)容放到response中返回,剩下的事情django自動完成。view的中心思想就是這樣,處理顯示部分的邏輯。
但是當(dāng)我們處理一些比較復(fù)雜的邏輯的時候,這樣寫就比較不利于維護(hù),而且函數(shù)體也會很復(fù)雜,這時我們一般用django的class來表達(dá)邏輯。由于class可以繼承,可以省去很多代碼復(fù)寫.
urls.py 指出了什么樣的 URL 調(diào)用什么的視圖。上面說的當(dāng)你在瀏覽器中輸入一個URL之后,django接受到請求之后,會根據(jù)你請求的url來調(diào)用相應(yīng)的視圖函數(shù)。
html 模板,它描述了這個頁面的設(shè)計是如何的。 使用帶基本邏輯聲明的模板語言。簡單來說,頁面想要顯示成什么樣子,都是這個文件決定的。
-
Web
+關(guān)注
關(guān)注
2文章
1298瀏覽量
73409 -
Django
+關(guān)注
關(guān)注
0文章
45瀏覽量
10799
發(fā)布評論請先 登錄
求 CS32G020移動電源EVB用戶使用指南 中的清晰原理圖
GaN HEMT的SPICE模型使用指南及示例
Nexperia SiC MOSFET LTspice模型使用指南
熱門前端框架:引領(lǐng)現(xiàn)代 Web 開發(fā)的潮流
AN198 GD32G5x3系列比較器使用指南
AN154 GD32VW553快速開發(fā)指南
技術(shù)升級:探索華為云 EulerOS 與 Flexus X 實例如何完美融合快速部署 Django

web開發(fā)中django快速使用指南
評論