скрипт вида не распознает помощников вида в Zend Framework - PullRequest
0 голосов
/ 20 июня 2011

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

resources.view.helperPath.ZF_View_Helper_="ZF/View/Helper/"

также я зарегистрировал помощникав файле Boostap

function _initViewHelpers(){
    $view = new Zend_View();    
    $view->addHelperPath('ZF/View/Helper','ZF_View_Helper');
    $viewRenderer = new Zend_Controller_Action_Helper_ViewRenderer();
    $viewRenderer->setView($view);
    Zend_Controller_Action_HelperBroker::addHelper($viewRenderer);
}

но напрасно он все еще печатает это сообщение об ошибке:

Application error
Exception information:
Message: Plugin by name 'OutputHelper' was not found in the registry; used paths: 
Zend_View_Helper_: Zend/View/Helper/  

он не включает в себя путь вспомогательного представления представления, как ожидалось;

путь помощника вида: библиотека / ZF / Вид / Помощник / OutputHelper.php

1 Ответ

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

вы можете сделать это:

в сценарии просмотра

$view = Zend_Controller_Front::getInstance()->getParam('bootstrap')->getResource('view');
var_dump($this === $view);
var_dump($view->getHelperPaths());
exit;

Я думаю, что ваш экземпляр представления заменяется в какой-то момент Может быть, у начальной загрузки модуля есть ресурс вида?

Или это может быть другая очевидная ошибка. Так очевидно, что вы никогда не будете думать об этом

кстати удалите этот метод _initViewHelpers. Zend_Application_Resource_View прекрасно работает для этого. И если вы используете этот метод, используйте его правильно, например:

$this->bootstrap('view');
$view = $this->getResource('view');
//whatever
...