Как перенаправить на другой контроллер в рамках одного роутера?
Имеется Symfony 5.3.5.
Допустим у нас есть роутер со ссылкой /reports которая ведет к контроллеру ReportController.
В системе есть два типа пользователей: сотрудники и клиенты. Как сделать так, чтобы сотрудника вело к контроллеру ReportController, а клиента к ReportClientController, при этом чтобы ссылка была одна.
Я думал сделать в контроллере для сотрудников проверку и потом "менять" контролер, но как-то это не совсем "красиво", может быть есть какое-то красивое решение.
Денис Дерепко, роутер один нужен, ибо пользователь может дать ссылку на отчёт, при этом чтобы ссылка корректно могла открыться как у сотрудника, так у клиента. А логика обработки отчёта очень сильно отличается, поэтому думаю разделить на разные контроллеры, а ссылка чтобы одна была.
wowbate, контроллер может быть один - он в любом случае лишь вызывает бизнес логику, где уже будут все проверки и прочее. Ну или юзать forward если нужно всё таки разделить на 2 контроллера
Денис Дерепко, "он в любом случае лишь вызывает бизнес логику" - да, если бы логика была похожа, то я мог бы малой кровью обойтись. А там всё очень сильно разное, костыли делать не хочется.