2016-09-01 6 views
4

У меня есть проблема с доступом к специальному помощнику вида в представлении. Вызовите помощника в layout.phtml отлично.Zend Framework - доступ к представлению помощника из представления

ZF Версия: 1.11.2

application.ini

resources.view[] = 

Bootstrap:

protected function _initViewSettings() 
{ 
    $this->bootstrap('view'); 
    $view = $this->getResource('view'); 
    $view->doctype('XHTML1_STRICT'); 

    $view->setScriptPath(APPLICATION_PATH . '/views/scripts/'); 
    $view->addHelperPath(APPLICATION_PATH . '/layouts/helpers/', 'Layout_Helper_'); 
    $view->addHelperPath(APPLICATION_PATH . '/views/helpers/', 'View_Helper_'); 

} 

Helper: (приложение/просмотров/помощники/Loader.php)

class View_Helper_Loader extends Zend_View_Helper_Abstract 
{ 
    public function loader() 
    { 
     $loader_html = ' 
      <div class="loading"> 
      <div class="bullet"></div> 
      <div class="bullet"></div> 
      <div class="bullet"></div> 
      <div class="bullet"></div> 
     </div>'; 

     return $loader_html; 
    } 
} 

Вид:

<?php 
    echo $this->loader(); 
?> 

Ошибка:

Plugin by name 'Loader' was not found in the registry; used paths: Zend_View_Helper_: Zend/View/Helper/ 

Почему я не могу использовать помощника по моему мнению?

+0

Zend Framework версия? – Progrock

+0

Должно быть 1.11.2 – uniqueHxC

+0

Что вы имеете в виду? Представление init уже находится в моем сообщении :) – uniqueHxC

ответ

0

Исправлено.

Проблема были следующие строки в моем действии:

$this->_helper->layout()->disableLayout(); 
    $this->_helper->viewRenderer->setNoRender(true); 

Я думал, что результат моего помощника будет обработан в мой взгляд, в любом случае. Плохая ошибка.

0

Возможно попробовать явно добавив ваше мнение на вид рендера:

$viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper(
     'ViewRenderer' 
    ); 
    $viewRenderer->setView($view); 

Я не могу достаточно обновить вашу проблему - иметь его работать в макете, но не вид.

Если я добавлю ресурс представления в application.ini, некоторые из проводников для меня автоматически выполняются в ZF 1.11.14, но если я создам представление (новый Zend_View) в начальной загрузке в качестве ресурса, я должен явно передайте его в средство визуализации.

+0

добавили эти строки в мой бутстрап, но ошибка все еще появляется: / – uniqueHxC

 Смежные вопросы

  • Нет связанных вопросов^_^