2011-09-22 110 views
0

Hy guys,zend模塊默認控制器

如何設置默認模塊控制器?

我需要,如果模塊文件夾中沒有控制器,我來默認模塊控制器和視圖!

比如我輸入到瀏覽器: http://192.168.1.100/Testmoduli/public/givep/

其中givep是我沒有IndexController.php模塊,現在我需要拿出我的默認模塊(artapp)到IndexController.php

resources.frontController.defaultController = "index" 
resources.frontController.defaultAction = "index" 
resources.frontController.defaultModule = "artapp" 
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules" 

謝謝!

編輯:

所以..

如果我嘗試推出一個不存在的動作,它會自動在默認的形式同樣的動作推出?

要啓動這個動作,我只能將動作捕捉到控制器錯誤??

謝謝!

回答

0

您可以在ErrorController做到這一點:

// in errorAction() 
if($this->_error->type == 'EXCEPTION_NO_CONTROLLER'){ 
    // redirect or forward where you want 
} 
+0

但我不知道是至極控制器!取決於用戶類型!例如,如果http://192.168.1.100/Testmoduli/public/givep/我需要進入IndexController.php但http://192.168.1.100/Testmoduli/public/givep/main我需要進入MainController .php的默認模塊! –

+0

如果我記得不錯,你可以從$ this - > _ error-> request-> getParam('controller')中提取控制器名稱。 –

+0

好的!只有這樣?有沒有其他的方法來設置默認文件夾到搜索控制器? –