Как CSS настроить ошибки формы Symfony с помощью начальной загрузки и ветки? - PullRequest
0 голосов
/ 17 октября 2019

Для формы и ветки Symfony я использую

{{ form_errors(form) }}

с bootstrap_4_horizontal_layout.html.twig, он работает нормально, и вывод выглядит так:

<span class="alert alert-danger d-block"><span class="d-block">
                    <span class="form-error-icon badge badge-danger text-uppercase">Error</span> <span class="form-error-message">Error</span>
                </span></span> 

Но мне нужно настроить его, чтобы перевести этозагрузочная метка ОШИБКА рядом с сообщением. Где я могу это настроить?

1 Ответ

3 голосов
/ 17 октября 2019

Вы можете и, вероятно, должны написать собственную тему формы и переопределить блок form_errors, чтобы адаптировать ее к своим потребностям. для справки: https://github.com/symfony/symfony/blob/537d373e0d8cb11fa70ddbe9559f2c4a741117a9/src/Symfony/Bridge/Twig/Resources/views/Form/bootstrap_4_layout.html.twig#L294

, поэтому для реализации собственной темы формы вам просто нужно иметь файл, скажем my_form_style.html.twig:

{% extends "bootstrap_4_horizontal_layout.html.twig" %}

{# override the blocks you want ... or add some, this is the original #}
{%- block form_errors -%}
    {%- if errors|length > 0 -%}
        <span class="{% if form is not rootform %}invalid-feedback{% else %}alert alert-danger{% endif %} d-block">
            {%- for error in errors -%}
                <span class="d-block">
                    <span class="form-error-icon badge badge-danger text-uppercase">{{ 'Error'|trans({}, 'validators') }}</span> <span class="form-error-message">{{ error.message }}</span>
                </span>
            {%- endfor -%}
        </span>
    {%- endif %}
{%- endblock form_errors %}

, а затем просто установить тему формына ваш:

{% form_theme form "my_form_style.html.twig" %}

наслаждайтесь

...