Django的MTV框架互動流程
本篇來整理一下Django的MTV框架,了解彼此間的關係與應用,
MTV代表了Model, Template與View,由 Model 負責資料層,View 負責視覺,Controller 負責商業邏輯的部份。
用下圖來說明MTV之間的互動流程,當使用者用瀏覽器與Django寫的網頁進行互動,首先會是跟哪個URL先產生互動,url.py會有urlpatterns來定義互動的網頁/址與對應的函數,如與company/互動,就會對應到view中company函數。
view.py中有def company(request)函數,使用者提出了一個request (HttpRequest),view會負責處理request,並提供response (HttpResponse),例如在資料庫中取得stockid的資料,並response給company.html。
view.py所需要取得的資料是由model.py來處理,model.py有class Company(models Model) 裡面連結資料庫中的欄位,如Stock_ID,連結了stockid變數,開發者可以使用stockid,而無須寫MySQL語言與資料庫溝通。
Template則是存放.html的資料夾,使用者在company/提出request,經由url.py引導到view.py負責處理的函數,然後response到company.html,例如在company中顯示stockid的資料。
MTV代表了Model, Template與View,由 Model 負責資料層,View 負責視覺,Controller 負責商業邏輯的部份。
用下圖來說明MTV之間的互動流程,當使用者用瀏覽器與Django寫的網頁進行互動,首先會是跟哪個URL先產生互動,url.py會有urlpatterns來定義互動的網頁/址與對應的函數,如與company/互動,就會對應到view中company函數。
view.py中有def company(request)函數,使用者提出了一個request (HttpRequest),view會負責處理request,並提供response (HttpResponse),例如在資料庫中取得stockid的資料,並response給company.html。
view.py所需要取得的資料是由model.py來處理,model.py有class Company(models Model) 裡面連結資料庫中的欄位,如Stock_ID,連結了stockid變數,開發者可以使用stockid,而無須寫MySQL語言與資料庫溝通。
Template則是存放.html的資料夾,使用者在company/提出request,經由url.py引導到view.py負責處理的函數,然後response到company.html,例如在company中顯示stockid的資料。
留言