У меня есть прослушиватель ошибок отправки, и я получаю исключение и проверяю, является ли это экземпляром CustomeException. В этом случае я хочу установить пользовательский шаблон представления с макетом по умолчанию.
public function attach(EventManagerInterface $events, $priority = 1)
{
$this->listeners[] = $events->attach(MvcEvent::EVENT_DISPATCH_ERROR, [$this, 'handleError'], 0);
}
public function handleError(MvcEvent $e)
{
$request = $e->getParam('application')->getRequest();
if ($request instanceof ConsoleRequest) {
return;
}
$exception = $e->getResult()->exception;
if ($exception instanceof FileNotFoundException) {
$view = new ViewModel(['message' => $exception->getMessage()]);
$view->setTerminal(false);
$view->setTemplate('admin/filenotfound');
$e->setViewModel($view);
}
}
Для этого кода я получил белую страницу с сообщением, но макет не установлен.
Как добавить пользовательский шаблон представления на макет по умолчанию для модуля?
Задача ещё не решена.
Других решений пока нет …