Два виджета даты в одном ряду. Форм-строитель, Symfony 4 - PullRequest
0 голосов
/ 02 ноября 2018

Я хочу поместить свои виджеты даты («от» и «до») в одну строку, но построитель форм не облегчает мне задачу.

Я думал, что это может сработать, но это не так ...

{% block form_row %}
{% spaceless %}
    <div class="form-group row mx-0">
    {%- if widget == 'single_text' -%}

        {{ form_widget(form, { 'attr': {'class': 'col-6'} }) }}

    {%- else -%}

            {{ form_widget(form) }}
            {{ form_errors(form) }}

    {%- endif -%}
    </div>

{% endspaceless %}

{% endblock form_row %}



// I think below doesn't make such a difference till I work out the upper part but here you go anyway
{%- block date_widget -%}
{%- if widget == 'single_text' -%}

    {{ form_label(form, null, { 'label_attr': {'class': 'col-3'} }) }}

    {{ block('form_widget_simple') }}
{%- else -%}
    <div {{ block('widget_container_attributes') }}>
        {{- date_pattern|replace({
            '{{ year }}':  form_widget(form.year),
            '{{ month }}': form_widget(form.month),
            '{{ day }}':   form_widget(form.day),
        })|raw -}}
    </div>
{%- endif -%}
{%- endblock date_widget -%}

Я хочу поместить в строку как "from", так и "to", так что это первое, что я делаю в form_row, а затем проверяю, описан ли виджет как 'single_text' в компоновщике, если да - я даю это просто половина строки (столбец 6), а не весь кусок, как в случае, когда виджет не является «single_text». Но это не так просто, и я получаю виджет «Переменная» «не существует».

У меня проблемы с конструктором форм, поэтому я был бы признателен за максимально простое решение.

...