[英]Zend Framework: Controller class == Page?
我是否正確地認為在Zend Framework中,如果我計划在我的網站上有5個頁面,我通常需要5個控制器? ZF開發人員通常每頁創建1個控制器(“頁面”作為abtract app unit)?
我問這個的原因是之前由於某種原因,我把很多不同的動作塞進控制器,以便他們扮演頁面的角色,例如索引/添加,索引/視圖,索引/刪除和顯示各種小屏幕,例如小CRUD屏幕而不是索引操作顯示的網格。
但是到目前為止,我想檢查一下我的新理解,即操作主要用於模型更新,操作一旦運行,應立即重定向回控制器/索引。 因此,看起來應該主要在索引操作中使用視圖,而在其他操作中則不太常見。
這聽起來在架構上有效嗎?
我認為這是一種方式...使用你的類比我想我使用像“部分”這樣的控制器和那些部分的“頁面”之類的操作。
但是那更多地依賴於舊的程序性||靜態范例頁面,因為實際上動作控制器本身與頁面或部分沒有關系,而不是你作為開發人員所做的關聯。 IE瀏覽器。 每個頁面都可能是依賴於應用程序架構的眾多操作和視圖的組合。
例如,如果我有一個博客模塊,我可能會有以下內容:
控制器:
瀏覽次數:
在我看來,控制器應該總是將多個具有共同用例的方法組合在一起。 嘗試找到描述應用程序功能的“名詞”:那些是控制器(動詞是控制器方法)。
如果你有(例如)博客,你可能有:
如果你只有5頁(例如家庭,關於,聯系......),MVC架構可能不合適。
indexAction僅是給定控制器的默認操作,對於顯示默認視圖很有用(與顯示子目錄的index.html或index.php頁面相同)。
在每個控制器的基礎上創建各種動作是完全可以接受的,每個動作可能有也可能沒有自己的視圖( 即添加和編輯)。 控制器旨在對類似的操作進行分組。
有關示例用法,請參閱Zend_Controller_Action上的文檔。 您可能還會發現熟悉Zend_Controller的工作流程很有用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.