Начальная загрузка Zend Layout и включает навигационный ресурс - PullRequest
0 голосов
/ 12 июня 2011

У меня проблема с отображением меню навигации, когда я использую следующий загрузчик:

public function _initViewHelpers()
{
    $this->bootstrap('layout');
    $layout = $this->getResource('layout');
    $view = $layout->getView(); // Never inits navigation resource?

    $view->headTitle()->setSeparator(' - ')
         ->headTitle('Test');

    $role = ($this->_auth->getStorage()->read() === null) ? 'guest' : $this->_auth->getStorage()->read()->role;
    $view->navigation()->setAcl($this->_acl)->setRole($role); 
}

В моем layout.phtml у меня есть:

echo $this->navigation()->menu();

И в моем application.iniУ меня есть:

resources.navigation.pages.index.label = "Home"
resources.navigation.pages.index.title = "Go Home"
resources.navigation.pages.index.controller = "index"
resources.navigation.pages.index.action = "index"
resources.navigation.pages.index.order = -100
resources.navigation.pages.index.route = "default"

При выдаче $view = $layout->getView(); мое меню навигации не отображается.Если я закомментирую эту часть, она будет хорошо отображаться.

Как я могу установить заголовок и роль acl в начальной загрузке, и все равно правильно отобразить мое меню?

1 Ответ

1 голос
/ 12 июня 2011

Вы пытались добавить ресурс вида к вашему application.ini и получить ваши ресурсы напрямую?

application.ini:

resources.view[] =

Bootstrap:

public function _initViewHelpers()
{
    $this->bootstrap('layout');
    $this->bootstrap('view');
    $this->bootstrap('navigation');
    $layout = $this->getResource('layout');
    $view = $this->getResource('view');
    ....
...