2011-08-24 95 views
4

當前查看位於APPLICATION_PATH . '/modules/my_module/views/scripts/'的腳本。我想在'/modules/my_module/views/'(刪除腳本文件夾)中放置腳本。如何實現這一目標?更改Zend Framework模塊視圖腳本路徑

的application.ini:

resources.frontController.moduleDirectory = APPLICATION_PATH "/modules" 
resources.modules[] = 
resources.view.scriptPath.default = APPLICATION_PATH "/views" 

回答

6

我創建插件:

class Application_Model_Controller_Plugin_AddScriptPath extends Zend_Controller_Plugin_Abstract 
{ 
    public function dispatchLoopStartup(Zend_Controller_Request_Abstract $request) { 
     $view = Zend_Controller_Action_HelperBroker::getExistingHelper('ViewRenderer')->view; 
     $scriptPath = sprintf('%s/modules/%s/views', 
       APPLICATION_PATH, 
       $request->getModuleName()); 
     if (file_exists($scriptPath)) { 
      $view->addScriptPath($scriptPath); 
     } 
    } 
} 

application.ini註冊吧:

resources.frontController.plugins[] = "Application_Model_Controller_Plugin_AddScriptPath" 
0

我知道這是很老,但它可以幫助別人。我有同樣的問題。我用

resources.view.scriptPath = APPLICATION_PATH "/views/" 
0

實現這一點,如果你想改變視圖腳本任何行動
您的控制器動作中添加此:

$這個 - >查看 - > addScriptPath(APPLICATION_PATH「你的/路徑」 );
$ this-> renderScript('list.phtml');