????????MVC是Model(模型)—View(視圖)—Controler(控制器)的簡(jiǎn)稱琼娘。MVC是一種設(shè)計(jì)模式预侯,它把應(yīng)用程序的輸入绽左、處理翻具、輸出分開(kāi)來(lái)履怯。
? ? ? ? 它們分別擔(dān)任著不同的任務(wù)。
? ? ? ? Model(模型):主要用于對(duì)數(shù)據(jù)庫(kù)層的封裝,?表示業(yè)務(wù)數(shù)據(jù)與數(shù)據(jù)庫(kù)的交互裆泳,一個(gè)模型能為多個(gè)視圖提供數(shù)據(jù)叹洲。這提高了應(yīng)用程序的重用性
? ? ? ? View(視圖):視圖是用戶看到并與之交互的界面。視圖向用戶顯示相關(guān)的數(shù)據(jù)工禾,并接受用戶的輸入运提。視圖不進(jìn)行任何業(yè)務(wù)邏輯處理。
? ? ? ? Controler(控制器):控制器起一個(gè)橋梁的作用闻葵,用于解析請(qǐng)求糙捺、獲取數(shù)據(jù)、返回結(jié)果
? ??????MVC的處理過(guò)程:首先控制器接受用戶的請(qǐng)求笙隙,調(diào)用相應(yīng)的模型來(lái)進(jìn)行業(yè)務(wù)處理洪灯, 并返回?cái)?shù)據(jù)給控制器。控制器調(diào)用相應(yīng)的視圖來(lái)顯示處理的結(jié)果签钩。并通過(guò)視圖呈現(xiàn)給用戶掏呼。
? ??????MVC 的優(yōu)點(diǎn):低耦合性、高重用性和可適用性铅檩、較低的生命周期成本憎夷、快速的部署、可維護(hù)性昧旨、可擴(kuò)展性拾给,有利于軟件工程化管理
? ? ? ? 在Django框架中,為了更加切合項(xiàng)目開(kāi)發(fā)兔沃,將MVC升級(jí)變成了MVT
? ???????Model(模型):主要用于對(duì)數(shù)據(jù)庫(kù)層的封裝,?表示業(yè)務(wù)數(shù)據(jù)與數(shù)據(jù)庫(kù)的交互蒋得,一個(gè)模型能為多個(gè)視圖提供數(shù)據(jù)。這提高了應(yīng)用程序的重用性
? ? ? ? Templates(模板):是用戶看到并與之交互的界面乒疏。向用戶顯示相關(guān)的數(shù)據(jù)额衙,并接受用戶的輸入。不進(jìn)行任何業(yè)務(wù)邏輯處理怕吴。
? ? ? ? View(視圖):起一個(gè)橋梁的作用窍侧,用于解析請(qǐng)求、獲取數(shù)據(jù)转绷、返回結(jié)果