Django基礎篇之MVC與MTV模型

MVC和MTV架構

MVC 模型

MVC 模式(Model–view–controller)是軟件工程中的一種軟件架構模式,把軟件系統分爲三個基本部分:模型(Model)、視圖(View)和控制器(Controller)

MVC 以一種插件式的、松耦合的方式連接在一起。

  • 模型(M)- 編寫程序應有的功能,負責業務對象與數據- 庫的映射(ORM)。
  • 視圖(V)- 圖形界面,負責與用戶的交互(頁面)。
  • 控制器(C)- 負責轉發請求,對請求進行處理。

簡易圖:
在這裏插入圖片描述
用戶操作流程圖:
在這裏插入圖片描述

MTV 模型

Django 的 MTV 模式本質上和 MVC 是一樣的,也是爲了各組件間保持松耦合關係,只是定義上有些許不同,Django 的 MTV 分別是指:

  • M 表示模型(Model):編寫程序應有的功能,負責業務對象與數據庫的映射(ORM)。
  • T 表示模板 (Template):負責如何把頁面(html)展示給用戶。
  • V 表示視圖(View):負責業務邏輯,並在適當時候調用 Model和 Template

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

簡易圖:
在這裏插入圖片描述
用戶操作流程圖:
在這裏插入圖片描述
解析:

用戶通過瀏覽器向我們的服務器發起一個請求(request),這個請求會去訪問視圖函數:

  • a.如果不涉及到數據調用,那麼這個時候視圖函數直接返回一個模板也就是一個網頁給用戶
  • b.如果涉及到數據調用,那麼視圖函數調用模型,模型去數據庫查找數據,然後逐級返回

視圖函數把返回的數據填充到模板中空格中,最後返回網頁給用戶

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章