2014-02-03 4 views
1

Я хочу использовать WebinoImageThumb Moudle в моей настраиваемого помощника, но когда я хочу, чтобы создать экземпляр этого модуля в вспомогательных фабриках я получил эту ошибку:Используйте другой модуль в наших пользовательских помощник в рамках ZEND 2

Zend\View\HelperPluginManager::get was unable to fetch or create an instance for WebinoImageThumb 

Но я могу получить доступ к экземпляру моего контроллера без каких-либо проблем.

Это код, который я получаю ошибку в:

public function getViewHelperConfig() 
{ 
    return array(
     'factories' => array(
      'ImageLib' => function ($sm) 
      { 
       $WebinoImageThumb = $sm->get('WebinoImageThumb'); 
       return new \Base\view\helper\ImageLib($WebinoImageThumb); 
      } 
     ) 
    ); 
} 

ответ

4

Вопрос, что осталось при отъезде: Какие записи является WebinoImageThumb. Это ViewHelper, это КонтроллерPlugin или это Сервис?

Возможно, это не является ViewHelper, потому что, если бы это было так, вы могли бы получить к нему доступ, как и вы.

Если это Service, вы получите его от ServiceManager

return new \Base\View\Helper\ImageLib(
    $sm->getServiceLocator()->get('WebinoImageThumb') 
); 

Если это ControllerPlugin, вы получите его от ControllerPluginManager

return new \Base\View\Helper\ImageLib(
    $sm->getServiceLocator()->get('ControllerPluginManager')->get('WebinoImageThumb') 
);