一個控制層調用模型 和 視圖層調用模型的問題?

來源:互聯網
上載者:User
一個架構中,我要在視圖層 輸出資料出來:

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

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

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

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

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

回複內容:

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

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

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

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

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

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

第一種,單一職責

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

現在我使用第一種

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

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

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

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.