MVC(Model View Controller 模型-視圖-控制器)是一種Web架構的模式,它把業務邏輯、模型數據、用戶界面分離開來,讓開發者將數據與表現解耦,前端工程師能夠只改頁面效果部分而不用接觸後端代碼,DBA能夠從新命名數據表而且只需更改一個地方,無需從一大堆文件中進行查找和替換。MVC模式甚至還能夠提升代碼複用能力。前端
Model模型:負責數據從數據庫中存入取出。
View視圖:將數據格式化後呈現給用戶(前端頁面)。
Controller控制器:根據瀏覽器的url地址訪問「模型」獲取數據,並調用「視圖」顯示這些數據(映射、模式渲染)。數據庫
Model(模型):負責業務對象與數據庫的對象(ORM)
Template(模版):負責如何把頁面展現給用戶(至關與MVC模式中的view)
View(視圖):負責業務邏輯,並在適當的時候調用Model和Template(至關與MVC模式中的controller)後端
Django的MTV模式本質上與MVC模式沒有什麼差異,也是各組件之間爲了保持鬆耦合關係,只是定義上有些許不一樣瀏覽器
Django還有一個url分發器,它的做用是將一個個URL的頁面請求分發給不一樣的view處理,view再調用相應的Model和Template前端工程師