首頁 >後端開發 >php教程 >一個控制層呼叫模型 和 視圖層呼叫模型的問題?

一個控制層呼叫模型 和 視圖層呼叫模型的問題?

WBOY
WBOY原創
2016-09-21 14:12:581178瀏覽

一個框架中,我要在視圖層輸出資料出來:

第一種,在控制器層,把所有的資料都組裝好,該調用模型的調用模型,然後視圖層模板渲染的時候,不需要再進行數據庫讀取,直接用php函數輸出就好了。

第二種,在控制器層,簡單的把必要的資料處理一下,然後視圖層模板渲染的時候,根據情況再進行資料庫的讀取操作;

這兩種情況哪一種比較好一點?

----------------------補充----------------------
我的觀點:我覺得是無所謂的事情,因為在一個控制器的方法中引入了一個模型進來,等於說是把一個文件加載進來了,然後在這個方法中進行數據讀取,最後再引入模板文件進來,那麼我在這個範本檔案中進行資料庫讀取也是可以的吧,不過是前者增加了模板程式碼的可讀性簡潔性。實際意義上並沒有什麼大的差別啊,不知道是不是這麼回事?

----------------------補充----------------------
知道MVC的特點,但是看到前輩們有的直接在模板中做了資料庫查詢操作,所以才產生這樣的疑問,求解惑~

回覆內容:

一個框架中,我要在視圖層輸出資料出來:

第一種,在控制器層,把所有的資料都組裝好,該調用模型的調用模型,然後視圖層模板渲染的時候,不需要再進行數據庫讀取,直接用php函數輸出就好了。

第二種,在控制器層,簡單的把必要的資料處理一下,然後視圖層模板渲染的時候,根據情況再進行資料庫的讀取操作;

這兩種情況哪一種比較好一點?

----------------------補充----------------------
我的觀點:我覺得是無所謂的事情,因為在一個控制器的方法中引入了一個模型進來,等於說是把一個文件加載進來了,然後在這個方法中進行數據讀取,最後再引入模板文件進來,那麼我在這個範本檔案中進行資料庫讀取也是可以的吧,不過是前者增加了模板程式碼的可讀性簡潔性。實際意義上並沒有什麼大的差別啊,不知道是不是這麼回事?

----------------------補充----------------------
知道MVC的特點,但是看到前輩們有的直接在模板中做了資料庫查詢操作,所以才產生這樣的疑問,求解惑~

第一種,單一職責

剛開始寫程式碼的時候,我為了省力把資料庫查詢都寫到模版裡面,一個方法解決所有問題。直到專案跑了一兩個月後對於日漸龐大的程式碼區塊前期節省的力氣要在這時候加倍付出,而且越往後走專案擴展越大時間付出越多。

現在我用第一種

怎麼說呢,其實各有各的好,
當然無論是從規範,還是從專案的發展來看,建議盡量使用第一種。

如果是個人開發的小項目,且功能及後期擴充都不會太多的話,用第二種方法 倒是更快速一些。 隨時用,隨時拿

第一種好!第一種也分把業務邏輯放在M 還是 C的。這個也因人而異。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn