Сначала вам понадобится контроллер, как вы грустите, это отобразит эту часть боковой панели, и действие должно быть одним и тем же контроллером, поэтому просто создайте для него маршрутизатор.
И вам также было грустно правильно, создать скрытое поле и установить там текущий маршрут. Но это сложная часть, потому что, когда вы вызываете эту «суб» визуализацию, внутри контроллера всегда будет маршрут, какой маршрут для контроллера, так что вам нужно делать, когда вы визуализируете контроллер, который вам нужно пройти в переменной, каков текущий маршрут, что вы можете сделать легко, передав значение переменной {{ app.request.attributes.get('_route') }}
, что является ИМЯ маршрута, а затем в вашем контроллере, в конце вы возвращаете новый RedirectResponse($this->generateUrl($url))
.
И оба варианта рендеринга формы и «процесса» могут находиться в одном контроллере, или если вы предпочитаете его, вы можете разобрать его, но я бы использовал только один, и вы можете протестировать запрос , каков текущий метод, если POST, то вы будете искать переменную и установить session/cookie/что у вас есть.
EDIT:
Несмотря на то, что вам не нравится, вы должны сказать, что это хороший ответ, но здесь есть другая. Действие должно быть всегда текущим маршрутом, и в основном вам нужно настроить прослушиватель событий запроса. Проверьте там, если это почтовый метод, и если да, то ищите свой конкретный ключ, и там вы идете. Оба одинаково хороши, и я использовал их оба.
Я обычно имею 'CommonController' для таких вещей, как те ... –
@jperovic ok, но в этом случае мне нужно получить текущий маршрут в этом действии, чтобы правильно перенаправить пользователей после отправки формы. Сохранить маршрут как скрытое поле? – deem