Django基础篇之MVC与MTV模型
生活随笔
收集整理的這篇文章主要介紹了
Django基础篇之MVC与MTV模型
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
目錄:
- MVC和MTV架構(gòu)
- MVC 模型
- MTV 模型
MVC和MTV架構(gòu)
MVC 模型
MVC 模式(Model–view–controller)是軟件工程中的一種軟件架構(gòu)模式,把軟件系統(tǒng)分為三個(gè)基本部分:模型(Model)、視圖(View)和控制器(Controller)
MVC 以一種插件式的、松耦合的方式連接在一起。
- 模型(M)- 編寫程序應(yīng)有的功能,負(fù)責(zé)業(yè)務(wù)對象與數(shù)據(jù)- 庫的映射(ORM)。
- 視圖(V)- 圖形界面,負(fù)責(zé)與用戶的交互(頁面)。
- 控制器(C)- 負(fù)責(zé)轉(zhuǎn)發(fā)請求,對請求進(jìn)行處理。
簡易圖:
用戶操作流程圖:
MTV 模型
Django 的 MTV 模式本質(zhì)上和 MVC 是一樣的,也是為了各組件間保持松耦合關(guān)系,只是定義上有些許不同,Django 的 MTV 分別是指:
- M 表示模型(Model):編寫程序應(yīng)有的功能,負(fù)責(zé)業(yè)務(wù)對象與數(shù)據(jù)庫的映射(ORM)。
- T 表示模板 (Template):負(fù)責(zé)如何把頁面(html)展示給用戶。
- V 表示視圖(View):負(fù)責(zé)業(yè)務(wù)邏輯,并在適當(dāng)時(shí)候調(diào)用 Model和 Template
除了以上三層之外,還需要一個(gè) URL 分發(fā)器,它的作用是將一個(gè)個(gè) URL 的頁面請求分發(fā)給不同的 View 處理,View 再調(diào)用相應(yīng)的 Model 和 Template,MTV 的響應(yīng)模式如下所示:
簡易圖:
用戶操作流程圖:
解析:
用戶通過瀏覽器向我們的服務(wù)器發(fā)起一個(gè)請求(request),這個(gè)請求會去訪問視圖函數(shù):
- a.如果不涉及到數(shù)據(jù)調(diào)用,那么這個(gè)時(shí)候視圖函數(shù)直接返回一個(gè)模板也就是一個(gè)網(wǎng)頁給用戶
- b.如果涉及到數(shù)據(jù)調(diào)用,那么視圖函數(shù)調(diào)用模型,模型去數(shù)據(jù)庫查找數(shù)據(jù),然后逐級返回
視圖函數(shù)把返回的數(shù)據(jù)填充到模板中空格中,最后返回網(wǎng)頁給用戶
總結(jié)
以上是生活随笔為你收集整理的Django基础篇之MVC与MTV模型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Django简介Django 各个环境下
- 下一篇: s3c2440移植MQTT