Редирект после отправки формы в Drupal 8/9

Для семерки можете посмотреть другую статью.

Обычно правят поведение существующих форм через hook_form_alter, добавляя туда еще один обработчик submit. Специальный метод setRedirectUrl объекта FormStateInterface позволяет настроить адрес перенаправления.

Например, добавим редирект в форму user_login_form.

Выполнится весь код, который предусмотрен штатно, потом будет произведен редирект. При необходимости, можно передать также и GET параметры:

Они читаются в контроллере, который формирует страницу, соответствующим образом:

Если требуется перенаправить ввод формы, то можно использовать другой код в обработчике submit:

Это прервет штатную обработку формы, но отправит её данные по другому URL.

Мало букафф? Читайте есчо !

Проверка, что поле пустое в twig

Январь 28, 2022 г.

При переходе к Drupal 8/9 на twig шаблоны, часто возникает вопрос, как проверить что поле пустое. Наиболее точный ответ на мой взгляд помогает найти фильтр render, т.к. он позволяет получить результат рендера соответствующего поля, а не заниматься ...

Читать

Превышение лимитов памяти при запросе перевода в модуле tmgmt

Октябрь 1, 2024 г.

Это проблема рекурсии при сборе информации о статье. Модуль сканирует ссылочные поля (reference entity fields) и может попасть в своеобразную рекурсивную петлю. К примеру, статья ссылается на параграф, а тот ссылается на эту же статью. Т.к. глубина ...

Читать

Пишем логи в Drupal 9

Октябрь 8, 2021 г.

Привычная функция watchdog, которую мы использовали в 6/7 версиях, к девятке пережила эволюцию до сервиса логирования. Бывшее ранее: [crayon-6adaa6ee75915010604548/] Сейчас выглядит так: [crayon-6adaa6ee7591c774650293/] Помимо того, ...

Читать

Рендер ссылки в Drupal 9

Август 5, 2021 г.

В Drupal 7 вы могли использовать функцию l($text, $url, $options) для генерации HTML кода тега <A>. В Drupal 9 подход коренным образом изменился, и прямого "наследника" устаревшей функции нет. Чтобы получить примерно тот же функционал придется ...

Читать
 

Комментарии к «Редирект после отправки формы в Drupal 8/9»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: