2011-09-01 84 views
0

我正在學習Zend並嘗試設置自定義視圖,但我遇到了麻煩。Zend的自定義視圖

class AccountController extends Zend_Controller_Action 
{ 
    public function init() {} 

    public function indexAction() 
    { 
    $this->view->setScriptPath(APPLICATION_PATH . '/views/scripts/mobile/'); 
    $this->view->render('iphone.phtml'); 
    } 
} 

該路徑對於iphone.phtml視圖是正確的。我不斷收到此錯誤:

Fatal error: Uncaught exception 'Zend_View_Exception' with message 'script 'error/error.phtml' not found in path (/Users/frankie/Websites/learn/zend/project1/application/views/scripts/mobile/)' in /Users/frankie/Websites/Libraries/ZendFramework-1.11.10/library/Zend/View/Abstract.php:988 Stack trace: #0 /Users/frankie/Websites/Libraries/ZendFramework-1.11.10/library/Zend/View/Abstract.php(884): Zend_View_Abstract->_script('error/error.pht...') #1 /Users/frankie/Websites/Libraries/ZendFramework-1.11.10/library/Zend/Controller/Action/Helper/ViewRenderer.php(900): Zend_View_Abstract->render('error/error.pht...') #2 /Users/frankie/Websites/Libraries/ZendFramework-1.11.10/library/Zend/Controller/Action/Helper/ViewRenderer.php(921): Zend_Controller_Action_Helper_ViewRenderer->renderScript('error/error.pht...', NULL) #3 /Users/frankie/Websites/Libraries/ZendFramework-1.11.10/library/Zend/Controller/Action/Helper/ViewRenderer.php(960): Zend_Controller_Action_Helper_ViewRenderer->render() #4 /Users/frankie/Websites/Libraries/ZendFr in /Users/frankie/Websites/Libraries/ZendFramework-1.11.10/library/Zend/Controller/Plugin/Broker.php on line 336 

我改變'setScriptPath''addScriptPath'並使其不再給出了錯誤,但完全忽略了$this->view->rendder

回答

3

$this->render()而不是$this->view->render()

0

除了yokoloko的回答,您錯誤處理配置不正確。它捕捉你的例外並嘗試顯示一個友好的錯誤,但你沒有友好的模板設置。

您應該真的創建views/scripts/error/error.pthml模板,或再次爲您的應用程序打開例外。 (對於development環境)。

resources.frontController.throwExceptions = true 

(或類似)