Twig не отображает поля ввода формы внутри блока вставки - PullRequest
0 голосов
/ 18 мая 2018

У меня есть шаблон блока, который я использую как шаблон для встраивания (он имеет заголовок, содержимое, кнопки, поэтому я не пишу тот же HTML), он выглядит так:

{% if block('title') or block('buttons') %}
    <div class="row">
        <div class="col-12 mb-3">
            <ul class="nav justify-content-between">
                <li class="nav-item order-1">
                    <h3>{% block title %}{% endblock title %}</h3>
                </li>
                <li class="nav-item order-3">
                    {% block buttons %}{% endblock buttons %}
                </li>
            </ul>
        </div>
    </div>
{% endif %}


{% if block('content') %}
    <div class="row">
        <div class="col-12 mb-3">
            {% block content %}{% endblock content %}
        </div>
    </div>
{% endif %}

Все работает нормальнопока я использую, поместите форму Symfony в блок.Тогда никакие поля ввода не отображаются.

final html

Пример использования:

{% embed "AppBundle::@sublayouts/block.html.twig" %}
    {% block title %}User{% endblock %}

    {% block buttons %}
        <a class="btn btn-success submit-form" href="#" data-form="user">Save</a>
    {% endblock %}

    {% block content %}
        <div class="row">
            <div class="col-12">
                <div class="card">
                    <div class="card-body clearfix">
                        {{ form_start(form, { 'attr': { 'data-id': 'user-form' }, 'style': 'horizontal', 'col_size': 'md', 'widget_col': 9, 'label_col': 3 }) }}
                            {{ form_errors(form) }}

                            <div class="form-group row">
                                {{ form_label(form.username) }}
                                <div class="col-md-9">
                                    {{ form_widget(form.username) }}
                                    {{ form_errors(form.username) }}
                                </div>
                            </div>

                        {{ form_end(form) }}
                    </div>
                </div>
            </div>
        </div>
    {% endblock %}
{% endembed %}

Спасибо

Редактировать # 1 : форма дампа дает это:

enter image description here

Интересно, что отображается: false даже с метками формы иструктура присутствует (пропущены только поля ввода)

Редактировать # 2: Хорошо, если я помещаю дамп в текущий блок, он сообщает Rendered: true

Редактировать # 3 : Единственное решение, которое я нашел, - передать путь вставки в другой файл, который содержит форму, и включить эту форму в шаблон для вставки, _,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...