我用控制器創建了一個模塊。我的模塊被稱爲'App \ Module \ Foo',控制器被稱爲'App \ Controller \ Foo'。我通過使用Zend\Mvc\Application::init(require 'config/application.config.php')->run();
配置了Zend槽application.config.php
。 (我已經建立了自定義啓動,神似ZF2骨架之一。)Zend Framework 2中Model,View,Controller和Module之間的關係是什麼?
'router' => array(
'routes' => array(
'Foo\Module\Index' => array(
'type' => 'segment',
'options' => array(
'route' => '[/]',
'constraints' => array(
'controller' => 'Foo\Controller\Index'
)
)
)
)
)
從我的理解這個配置將對於Web根目錄的所有請求重定向到Foo\Controller\Index
控制器。這真的必須在Foo\Module\Index
數組密鑰中,還是我可以用我認爲適合該路由的任何名稱來替換密鑰? (只要它是唯一的)如果這是真的,這是否意味着我可以有一個大模塊與多個路線?
另外,它是如何知道在該控制器上調用什麼方法的?在Zend引用中,似乎沒有一個代理需要一些參數(如動作)並將其發送到控制器內的正確方法。看起來ZF2通過魔法知道要調用什麼方法。
困擾我的另一件事是框架如何知道視圖的位置?官方的參考文獻說它會尋找{controller name}/{action name}
,但它會在哪裏看,以及如果我沒有一個行動變量呢?
另外我正確的時候,我想一個模型基本上只是一個數據結構,你可以使用(像一個用戶類或Permissions類)和一個窗體是一個類處理實際POST數據通過HTML發送通過形成?
tereško我已閱讀,則已,看了一遍剛纔它實際上是在http://framework.zend.com/manual/2.0/en/modules/zend.mvc.intro.html –
@描述,我的問題都沒有回答。它基本上解釋了Skeleton應用程序是如何工作的,而我沒有使用它。 –
@Binero:如果他們提供的文檔不夠充分,請向供應商打開支持憑單,以便他們從用戶那裏獲得一些反饋。 – hakre