изменение формы крючка не вызывается, когда узел не проходит проверку
Я замечаю, что hook_form_alter не вызывается, когда на странице есть ошибки, которые отображают сообщение от form_set_error. Изменения в моей форме не вступают в силу, и страница с ошибкой фактически повреждена.
Я попытался вывести инструкцию dpm в hook_form_alter, но она не отображается на странице ошибок.
Есть ли способ заставить drupal вызвать хук и изменить форму?
3
Author: kiamlaluno, 2012-04-15
1 answers
Формы кэшируются в Drupal, поэтому форма загружается один раз (где запускается ваш form_alter), а затем загружается из кэша для перезагрузки при наличии ошибок проверки.
Вы должны использовать обратный вызов #after_build, который всегда запускается.
Просто не забудьте вернуть $элемент в обратном вызове #after_build, иначе вы получите WSOD.
3
Author: Alex Weber, 2012-04-15 04:08:14