мой страница ошибки никогда не нажимает следующий код во время выполнения.
Понимание DesignHandler здесь не важно, но важно то, что при возникновении ошибки он правильно перенаправляется на страницу ошибки, но никогда не попадает в этот фрагмент кода.
namespace Application;
class Module
{
public function onBootstrap(MvcEvent $e)
{
$events = $e->getApplication()->getEventManager();
$sharedEvents = $events->getSharedManager();
$sharedEvents->attach(__NAMESPACE__, 'dispatch', function($e) {
$designHandler = Pluto::app()->getDesignHandler();
$designHandler->pump($e);
}, 20);
}
}
ИЛИ (я пробовал и onbootstrap и init)
namespace Application;
class Module
{
public function init(\Zend\ModuleManager\ModuleManager $manager)
{
$events = $manager->getEventManager();
$sharedEvents = $events->getSharedManager();
$sharedEvents->attach(__NAMESPACE__, 'dispatch', function($e) {
$designHandler = Pluto::app()->getDesignHandler();
$designHandler->pump($e);
}, 20);
}
}
Я понятия не имею, как решить эту проблему. Я предполагаю, что когда ошибка попадает в нее, она замыкает маршрут, и этот код никогда не срабатывает
ОБНОВИТЬ
Я также попробовал это с обоими частями кода, но безуспешно:
$sharedEvents->attach(__NAMESPACE__, 'dispatch.error', function($e) {
$designHandler = Pluto::app()->getDesignHandler();
$designHandler->pump($e);
}, 20);
Задача ещё не решена.
Других решений пока нет …