Я создал два настраиваемых типа форм в Symfony2 и соответствующие им шаблоны веток. Читая документацию, я заметил, что ветка называется "fields.html" .twig ". Это заставило меня поверить, что я могу определить несколько блоков в одном файле, но я не понимаю, как? Вот мой текущий файл fields.html.twig:
{% block open_range_widget %}
<div class="open_range_widget" style="display: inline;">
<div class="field" style="display: inline;">
{{ form_errors(form.sel) }}
{{ form_widget(form.sel) }}
</div>
<div class="field" style="display: inline;">
{{ form_errors(form.val) }}
{{ form_widget(form.val) }}
</div>
</div>
{% endblock %}
{% block range_widget %}
<div class="range_widget" >
<div class="field" style="display: inline; width: 50%">
{{ form_errors(form.min) }}
{{ form_widget(form.min) }}
</div>
<div class="field" style="display: inline; width: 50%">
{{ form_errors(form.max) }}
{{ form_widget(form.max) }}
</div>
</div>
{% endblock %}
1 ответ
Если вы заглянете внутрь 'vendor / symfony / symfony / bridge / Twig / resources / views / form /', вы заметите файл с именем form_div_layout.html, загляните внутрь, и вы заметите, что вся коллекция стандартных виджетов формы Symfony2 содержится здесь. Итак, да, вы можете определить столько блоков, сколько захотите, в файле шаблона. Хотя лучше держать вещи немного отдельно. Скажем, у вас есть 2 разных стиля для виджета выбора в зависимости от формы, вам нужно, чтобы 2 шаблона определяли их.
Вы даже можете скопировать весь поставляемый шаблон в App / Resources / Views / Form / form_div_layout.html и внести изменения прямо там. Однако это может привести к созданию сложного и запутанного файла шаблона с МНОГИМИ ненужными блоками.
Похожие вопросы
Новые вопросы
php
PHP — это открытый, мультипарадигмальный, динамически типизированный и интерпретируемый язык сценариев, изначально разработанный для веб-разработки на стороне сервера. Используйте этот тег для вопросов о программировании на языке PHP.