Zend Navigation を使用してメニューを作成しています。レイアウト スクリプトで使用する$this->navigation( )
と、メニューが完全にレンダリングされます。しかし、ビュー スクリプトで同じコードを使用して同じメニューをレンダリングしようとすると、何もレンダリングされません。
これは、Zend_Navigation を開始してレイアウト スクリプトにアタッチするためにブートストラップで使用するコードです。
protected function _initNavigation( )
{
$this->bootstrap( 'layout' );
$layout = $this->getResource( 'layout' );
$view = $layout->getView( );
$config = new Zend_Config_Xml( APPLICATION_PATH . '/configs/navigation.xml', 'nav' );
$navigation = new Zend_Navigation( $config );
$view->navigation( $navigation );
$view->addHelperPath( 'App/View/Helper/Navigation', 'App_View_Helper' );
}
私はしばらくこの問題に取り組んできましたが、次のコードをブートストラップに追加する必要があることがわかりました。
protected function initView( ) { }
しかし、なぜこの役に立たないコードを配置する必要があるのか 疑問に思っています。このトピックによると、次の行を使用して、application.ini でビュー リソースを既にブートストラップしています。
resources.view.basePath = APPLICATION_PATH "/views"
resources.view.helperPath = APPLICATION_PATH "/views/helpers"
前もって感謝します!