Django之MTV模式


MTVMVC+url控制器 

MVC框架:

·         Mmodel.py  就是和數據庫打交道用的,創建表等操作

·         VView  視圖(視圖函數:邏輯處理響應函數,html文件)

·         Ccontroller  控制器(請求文件路徑與響應函數的映射表:urls文件里面的內容,url(路徑)分發與視圖函數的邏輯處理)

 

       Web服務器開發領域里著名的MVC模式,所謂MVC就是把Web應用分為模型(M),控制器(C)和視圖(V)三層,他們之間以一種插件式的、松耦合的方式連接在一起,模型負責業務對象與數據庫的映射(ORM),視圖負責與用戶的交互(頁面),控制器接受用戶的輸入調用模型和視圖完成用戶的請求,其示意圖如下所示:

 

 


 

 

MTV框架:

·         Mmodel.py  就是和數據庫打交道用的,創建表等操作(和MVC一樣)

·         Ttemplates  存放HTML文件的

·         VView 視圖函數(邏輯處理)

對比:

MTVMVC少一個url分發的部分

 

Django 的引入

        Django是基於MTV模式的框架,需要配合url控制器(路徑分發)使用!

        DjangoMTV模式本質上和MVC是一樣的,也是為了各組件間保持松耦合關系,只是定義上有些許不同,DjangoMTV分別是值:

·         M 代表模型(Model): 負責業務對象和數據庫的關系映射(ORM)

·         T 代表模板 (Template):負責如何把頁面展示給用戶(html)

·         V 代表視圖(View):   負責業務邏輯,並在適當時候調用ModelTemplate

        除了以上三層之外,還需要一個URL分發器,它的作用是將一個個URL的頁面請求分發給不同的View處理,View再調用相應的ModelTemplateMTV的響應模式如下所示:

 

 

               

     
一般是用戶通過瀏覽器向我們的服務器發起一個請求(request),這個請求回去訪問視圖函數,(如果不涉及到數據調用,那么這個時候視圖函數返回一個模板也就是一個網頁給用戶),視圖函數調用模型,模型去數據庫查找數據,然后逐級返回,視圖函數把返回的數據填充到模板中空格中,最后返回網頁給用戶。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM