@alexrakirov

Как использовать событие kernel.controller?

В общем мне нужно поменять контроллер по определенной логике, нашёл в доках событие kernel.controller и повесил на него метод:

public function onKernelController(ControllerEvent $event)
{
       $controllerName = 'App\Controller\ToController::index';

       // вот тут по логике $event->setController();
}


Но не могу понять что я должен положить в setController, если я имею путь до контроллер? Не нашёл в документации ничего.
  • Вопрос задан
  • 87 просмотров
Пригласить эксперта
Ответы на вопрос 1
@sl0
Нужно получить контроллер через резолвер ControllerResolverInterface и уже его передавать в setController.
Только там какой-то хитрый способ его получения через резолвер, насколько помню туда не просто путь нужно передать.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы