Я строю систему виджетов на основе Action Helper.Каждый виджет имеет дело с ответом сегмента для изменения вида рендеринга.Но у меня есть проблема.Виджеты вызывают в плагине контроллера, в preDispatch, как это:
// $widgets : list of widget to call
foreach($widgets as $segment =>$widget) {
Zend_Controller_Action_HelperBroker::addHelper(
new $widget($segment));
}
Это нормально.Но если я получаю один и тот же вызов виджета дважды, виджет будет вызывать только один раз.Пример:
Zend_Controller_Action_HelperBroker::addHelper(
new Menu_Widget($segment=’menu’),
new Menu_Widget($segment =’right’),
);
Если я сделаю дамп для проверки стека:
Zend_Debug::dump(Zend_Controller_Action_HelperBroker::getStack());
Я могу видеть только один раз Menu_Widget в этом массиве.
Как я могуесть несколько экземпляров одного и того же помощника действий?
Извините за мой английский.