Daily Archives: 2008 年 10 月 23 日

ZendFrameworkでViewがないとエラーになりますよ。

8
Filed under php, Zend Framework
Tagged as

Hello Worldみたいな単純な表示すらでなかったら、ショックをうけますね。

ということで、ZendFrameworkで以下のエラーがでたので、
一応コメントを残しておく。

エラーは、Apacheのerror_logに出力されてました。
標準出力的には、まっ白い画面でした。

PHP Fatal error: Uncaught exception ‘Zend_Controller_Dispatcher_Exception’ with message ‘Invalid controller specified (error)’ in /usr/share/pear/Zend/Controller/Dispatcher/Standard.php:249\nStack trace:\n#0 /usr/share/pear/Zend/Controller/Front.php(914): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))\n#1 /public_htmlまでのPATH/index.php(14): Zend_Controller_Front->dispatch()\n#2 {main}\n thrown in /usr/share/pear/Zend/Controller/Dispatcher/Standard.php on line 249

【原因】
該当のControllerに対応したViewが存在しない場合などに表示されるようです。
他にも要因はあるんだろうけど、今回はこれでした。

/(APP用フォルダ)/controllers/IndexController.php (indexActionだったら)

が利用されている場合には、以下のViewを呼びにいくわけです。

/(APP用フォルダ)/views/scripts/index/index.phtml

要するに、
/(APP用フォルダ)/views/scripts までは固定で
index が Controllerの名前と紐づき、
index.phtml がActionの名前と紐づくわけですね。

まあ、僕のは、scriptsフォルダがなかったわけですが・・・・
初歩の初歩。 間違いとしては、下の下ですね。

※自動でレンダリング?しないようにしている場合には、大丈夫だと思う。

ZendFrameworkのおすすめ書籍