При выводе элементов формы, таких как, сообщения об ошибках, поля, метки и т. п.,
Symfony
, по умолчанию, использует шаблоны расположенные в папке vendor\symfony\symfony\src\Symfony\Bridge\Twig\Resources\views\Form\
.
Например, если в шаблоне вывести сообщение об ошибке таким образом:
{{ form_errors(loginForm.email) | trans }}то для рендеринга этого элемента формы,
Symfony
будет использовать блок form_errors
расположенный в файле form_div_layout.html
:
{% block form_errors %} {% spaceless %} {% if errors|length > 0 %} <ul> {% for error in errors %} <li>{{ error.message }}</li> {% endfor %} </ul> {% endif %} {% endspaceless %} {% endblock form_errors %}Чтобы переопределить этот блок и сделать его глобальным для всего сайта, необходимо выполнить следующие действия:
- В каталоге
app/Resources/views
создать файлform_errors.html.twig
. Этот файл будет содержать переопределенный блок. - Скопировать из файла
form_div_layout.html.twig
описанный выше блок и подправить его нужным образом. К примеру, можно убрать список и добавить свойcss
стиль:{% block form_errors %} {% spaceless %} {% if errors|length > 0 %} {% for error in errors %} <span class=”error-style”> {{ error.message }} </span> {% endfor %} {% endif %} {% endspaceless %} {% endblock form_errors %}
- В настройках, в файле
app/config/config.yml
, следует указатьSymfony
этот шаблон:# Twig Configuration twig: #... form: resources: - 'form_errors.html.twig'
Комментариев нет:
Отправить комментарий