У меня есть два файла веток - index
и layout
.Я пытаюсь вывести форму в index
.
Из-за структуры шаблонов для этого сайта я вынужден обернуть форму вокруг внешнего вида макета, как показано ниже.
Это файл шаблона:
{# layout.html.twig: #}
{% block main %}
<!--
there is actually a lot more going on here
and simply moving it into index would lead
to a lot of duplication in the html structure
-->
<main>
{% block mainContent %}
{% endblock %}
</main>
{% endblock %}
И это файл, реализующий шаблон:
{# index.html.twig: #}
{% extends 'layout.html.twig' %}
{% block main %}
{{ form(form) }}
{{ parent() }}
{{ form_end(form) }}
{% endblock %}
{% block mainContent %}
{{ form_row(form.my_field) }}
{% endblock %}
index
перезаписывает блок main
, добавляет форму, затем вызывает в ней основной родительский контент.Родительский контент содержит блок с именем mainContent
, в который я затем добавляю элементы формы.
Единственная проблема заключается в том, что у Symfony / Twig есть другие идеи, и они выводят все мои строки до blockMain
, поэтому мои вызовыform_row
там просто игнорируются, так как соответствующие элементы уже отражены.
Как я могу остановить это и вывести свою форму в blockMain, но обернуть ее вокруг основного блока?
Извинения, если это должно бытьдубликат - я изо всех сил пытаюсь найти подходящие ключевые слова для этого.Хотя я могу видеть, что происходит (вроде), на самом деле я не знаю, как называется это поведение.