著名的MVC模式:方便解藕
所謂的MVC就是把web應用分為三層
1.模型層: model 負責業務物件和資料庫的物件(ORM)的對映
2.檢視層 views 負責與使用者的互動(書寫邏輯)
3.控制器 Controller 完成使用者對模型層和檢視層呼叫,來完成使用者的請求
他們之間已一種外掛式的,鬆耦合的方式連線在一起,
Django的MTV模式本質上和MVC沒有什麼大的差別,也是為了實現解藕性,只是定義上有些不同
1.模型層: model 負責業務物件與資料庫的物件(ORM)的對映
2.模板層 Template 負責如何把頁面展示給使用者(html)
3.檢視層: View 負責業務邏輯,並在適當的時候呼叫Model和Template
另外:Django還有一個URL分發器,它的作用是將一個個URL的頁面請求分發給不同的檢視,檢視在呼叫相對的模板和Model
區別:
MVC中的View的目的是「呈現哪一個資料」,而MTV的View的目的是「資料如何呈現」。
也就是把MVC中的View分成了檢視(展現哪些資料)和模板(如何展現)2個部分,而Contorller這個要素由框架自己來實現了,我們需要做的就是把(帶正規表示式的)URL對應到檢視就可以了,通過這樣的URL配置,系統將一個請求傳送到一個合適的檢視。