![](/img/trans.png)
[英]How do you render a view (for HTML email purposes) in Zend Framework 2?
[英]How do you decide if something goes in the view or the controller? (Zend Framework)
您如何確定視圖或控制器中是否有內容?
以下是一些具體示例:
是什么組件(模型,視圖或控制器)應該做什么的規則或准則,寫在我可以查看它們的地方? 我沒有在Zend Framework網站上的文檔中看到這一點。
一般來說,這個問題可以適用於任何MVC框架。 這是我使用的准則:
瘦控制器。 如果可能的話,讓您的控制器除了在模型上調用業務邏輯並將結果傳遞給視圖外,無所不包。
視圖除了視圖邏輯外什么也不做。 做與視覺上與用戶交互有關的任何事情,例如生成驗證碼,隱藏和顯示基於ACL的鏈接。 不計算總數。 不要在模型上調用邏輯。 不要做業務邏輯。 通常,可以從視圖中讀取會話以隱藏和顯示數據/鏈接。 但是不要為了安全而依賴它:也要使您的控制器安全。
胖模型。 盡可能在模型中加入業務邏輯。 這樣,您可以在控制器之間共享它們。 如果您發現自己在控制器中遍歷模型的元素,根據某些規則重置值或執行復雜的業務邏輯,那么您應該嘗試找到一種方法將邏輯納入模型層。
希望這可以幫助。
對於Capcha,您可以在視圖中生成。 對於Acl,請使用視圖。 Zend_Session可以通過控制器和視圖訪問
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.