第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

在 MVC 中,驗(yàn)證放在 Controller 中還是 Model 中?

在 MVC 中,驗(yàn)證放在 Controller 中還是 Model 中?

本人是一名前端,剛才開(kāi)始寫(xiě)后臺(tái),這個(gè)問(wèn)題比較困惑。是否放在Model中,通過(guò)Model返回不同的狀態(tài)碼供不同控制器調(diào)用會(huì)好一些?大家來(lái)分享一下自己的經(jīng)驗(yàn)吧。后面附上兩個(gè)相關(guān)的鏈接:http://stackoverflow.com/questions/5305854/best-place-for-validation-in-model-view-controller-modelhttp://ruby-china.org/topics/4005
查看完整描述

2 回答

?
MYYA

TA貢獻(xiàn)1868條經(jīng)驗(yàn) 獲得超4個(gè)贊

曾經(jīng)我也有類(lèi)似的疑惑,其實(shí)大家也都說(shuō)廋controller,胖model,可是為什么廋controller就一定要胖model呢,設(shè)計(jì)的原則是什么,就是越簡(jiǎn)單越好,那么胖model不就違背了我們的設(shè)計(jì)原則么?
所以對(duì)于這個(gè)問(wèn)題,我的解決思路是,既然要減肥,那大家都減肥好了,廋controller+廋model驗(yàn)證層(我稱(chēng)之為model_service)+廋model,這樣的話(huà),即便多個(gè)controller復(fù)用驗(yàn)證層也不成問(wèn)題,而model還是基本的增刪改查,并且在這個(gè)model會(huì)更加的靈活,例如常見(jiàn)的問(wèn)題,一個(gè)model引用另個(gè)model的增刪改查,也可以直接復(fù)用
其實(shí)分層是一個(gè)思想,而不是說(shuō)分層就一定要按照某個(gè)既定的方案死板硬套,那樣還不如不分層,既然你已經(jīng)采用了分層的思想,那么是mvc還是smvc就沒(méi)有說(shuō)那個(gè)一定好,要看自己怎么考慮自己程序是怎么分層的,說(shuō)不定你為了方便還搞出了一個(gè)xxxmvc分層設(shè)計(jì)呢,分層分層,切記一定要有能加層的設(shè)計(jì)考慮。
記得好像網(wǎng)上流行一句話(huà)“計(jì)算機(jī)科學(xué)領(lǐng)域的任何問(wèn)題都可以通過(guò)增加一個(gè)間接的中間層來(lái)解決”,所以你會(huì)看到很多類(lèi)似的概念:代理、緩存、cgi、工廠模式等等,甚至直接就來(lái)一個(gè)概念叫“中間層”,所以說(shuō)當(dāng)你覺(jué)得放在有聯(lián)系的2個(gè)層中隨便哪個(gè)都好時(shí),你可以想想是不是有一個(gè)中間層會(huì)更好呢?
                            
查看完整回答
反對(duì) 回復(fù) 2019-04-08
  • 2 回答
  • 0 關(guān)注
  • 421 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)