Por defecto en Symfony3 genera los mensajes de error {{ form_errors(form) }} de los formularios con el siguiente html:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
<ul>
<li>Mensaje de error...</li>
</ul>
<ul> <li>Mensaje de error...</li> </ul>
<ul>
    <li>Mensaje de error...</li>
</ul>

Es posible que necesites personalizar ese html añadiendo alguna clase css, para usar en tu proyecto, bootstrap…

Pasos para añadir la clase css «error» al <ul>:

1. Creamos un archivo twig (/TuBundle/Resources/views/Form/mensajes_error.html.twig) con el bloque/s del mensaje de error que por defecto symfony guarda en el archivo form_div_layout.html.twig.
Y lo editamos a nuestro gusto, en este caso le añadimos la clase «error» a la lista:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
{% block form_errors %}
{% if errors|length > 0 %}
<ul class="error">
{% for error in errors %}
<li>{{ error.message }}</li>
{% endfor %}
</ul>
{% endif %}
{% endblock form_errors %}
{% block form_errors %} {% if errors|length > 0 %} <ul class="error"> {% for error in errors %} <li>{{ error.message }}</li> {% endfor %} </ul> {% endif %} {% endblock form_errors %}
{% block form_errors %}
    {% if errors|length > 0 %}
    <ul class="error">
        {% for error in errors %}
            <li>{{ error.message }}</li>
        {% endfor %}
    </ul>
    {% endif %}
{% endblock form_errors %}

2. Añadimos el archivo twig creado a la configuración por defecto de los formularios de twig editando el archivo /config/config.yml usando «form_themes» de esta forma:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# Twig Configuration
twig:
form_themes:
- "TuBundle:Form:mensajes_error.html.twig"
# Twig Configuration twig: form_themes: - "TuBundle:Form:mensajes_error.html.twig"
# Twig Configuration
twig:
    form_themes:
        - "TuBundle:Form:mensajes_error.html.twig"

– – –

Listo! ahora los mensajes de error aparecerán de forma global con este html:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
<ul class="error">
<li>Mensaje de error...</li>
</ul>
<ul class="error"> <li>Mensaje de error...</li> </ul>
<ul class="error">
    <li>Mensaje de error...</li>
</ul>

(*) Acuérdate de cambiar «TuBundle» por el nombre de tu bundle.

pd: Y si solo quieres editar los errores de una determinada plantilla en concreto, (te olvidas del paso 2) y en la plantilla twig donde tengas tu formulario le insertas:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
{% form_theme form_pass 'TuBundle:Form:mensajes_error.html.twig' %}
{% form_theme form_pass 'TuBundle:Form:mensajes_error.html.twig' %}
{% form_theme form_pass 'TuBundle:Form:mensajes_error.html.twig' %}

Agradezco tu comentario 🤘