Symfony2 и тематика/настройка форм (required/help/errors)

Может быть, я что-то упускаю из виду, и, надеюсь, это делается очень легко.

У меня есть форма, и в итоге я хочу получить следующий результат:

Поля, которые:

  • являются обязательными/обязательными
  • есть ошибка в настоящее время
  • есть помощь

должен получить дополнительныйa-Тег после метки и дополнительный div, заполненный справкой и/или ошибкой, если применимо.

Что мне нужно сделать, так это то, что обязательные поля получаютa-Отметьте, используя это:

{% use 'form_div_layout.html.twig' with field_label as base_field_label %}

{% block field_label %}
    {{ block('base_field_label') }}

    {% if required %}
        <a href=""><span>&nbsp;</span></a>
    {% endif %}
{% endblock %}

Итак, я уже пробовал разные версии этого:

{% use 'form_div_layout.html.twig' with field_label as base_field_label %}

{% block field_label %}
    {{ block('base_field_label') }}

    {% if required or help is defined %}
        <a href=""><span>&nbsp;</span></a>
    {% endif %}
{% endblock %}

{% block field_row %}
    {% spaceless %}
        <div class="row">
            {% if required or help is defined %}
                <div>
                    {{ form_errors(form) }}
                    {{ help }}
                </div>
            {% endif %}

            {{ form_label(form) }}
            {{ form_widget(form, { 'attr': {'class': 'grid_4'} }) }}
        </div>          
    {% endspaceless %}
{% endblock field_row %}

И я не могу заставить это работать.

Итак, мои вопросы:

  • Откуда взять текст справки, который также может содержать HTML? Я пробовал это в form builderбезуспешно -, но, по крайней мере, с исключением:

    $builder    ->add('subject', 'text', array(
        'label' => 'Subject',
        'help' => 'Can be formatted content with <strong>HTML-Elements</strong>',
        ));
    
  • Как я могу сказать, что текущее поле имеет ошибку (, чтобы добавить класс в строку )и, если да, также отобразить его? {{ form_errors(form) }}ничего не выводит, независимо от того, где я помещаю его в поле `_row˚.

5
задан insertusernamehere 9 July 2012 в 16:43
поделиться