- Django 3.0入門與實踐
- 李健編著
- 791字
- 2021-03-27 00:17:33
2.2 MTV框架
前面的Web開發框架非常簡單,完全符合初級程序員想到哪做到哪的開發風格。這種開發風格在個人開發或者微型團隊開發中不會出現任何問題,有時還能夠提高溝通效率,減少工作量。但是,當團隊規模擴大、業務場景變得越來越復雜的情況下,這種開發模式就會給開發人員和技術管理人員帶來諸多麻煩,例如,有時某一個開發人員辛辛苦苦地完成一個方法后卻發現其他人在很早之前已經完成了;有時系統里存在一個非常高效的方法卻沒有人知道存放位置,最終的代碼變得雜亂無章且難以管理。為了解決這些問題,軟件開發中逐漸引入了開發框架的概念,開發框架通常針對某一領域使得代碼更容易地被重用。經常被提及的設計模式有微軟的ASP.NET MVC框架、Java的Spring框架等。
Django框架的基礎是MTV模式,它將開發任務分為三大部分:Model、Template、View。很多人可能對MTV不太了解,但是,如果說到一個和它相似的開發模式你一定了解,或者說很熟悉,那就是MVC開發模式。MVC模式就是把Web應用分為Model(模型)、View(視圖)、Controller(控制器)三層。
Model:負責業務對象與數據庫的關系映射(一般基于ORM(Object Relational Mapping,對象關系映射)框架)。
View:負責頁面展示,也就是與用戶直接交互的網頁部分。
Controller:接收并處理用戶的請求,通常需要調用Model和View來完成用戶請求。
MVC模式三者之間的關系如下圖所示。

MTV與MVC模式非常相似,也將開發工作分為三層:
M代表模型(Model):負責業務對象和數據庫的關系映射(ORM),這與MVC模式中的模型是一樣的。
T代表模板(Template):負責把頁面展示給用戶(html),這部分類似于MVC中的視圖。
V代表視圖(View):負責業務邏輯,并在適當時候調用Model和Template,這里就不是MVC的View了,反而更像是Controller。
Django的響應模式如下圖所示。

響應順序如下:
(1)Django中間件接收到一個用戶請求。
(2)Django通過URLconf查找對應的視圖,然后進行URL路由分發。
(3)視圖接收請求,查詢對應的模型,調用模板生成HTML文檔。
(4)視圖返回處理后的HTML文檔。
(5)Web服務器將響應內容發送給客戶端。
- Python語言程序設計
- 實用防銹油配方與制備200例
- 青少年Python編程入門
- Visual Basic程序設計實驗指導(第二版)
- Quantum Computing and Blockchain in Business
- 匯編語言編程基礎:基于LoongArch
- 零基礎學C語言第2版
- Maker基地嘉年華:玩轉樂動魔盒學Scratch
- Mastering Concurrency Programming with Java 9(Second Edition)
- Photoshop CC移動UI設計案例教程(全彩慕課版·第2版)
- Java程序設計教程
- Java高手是怎樣煉成的:原理、方法與實踐
- SQL Server 2008實用教程(第3版)
- Mastering Machine Learning with R
- 企業應用架構模式