Ветка Symfony переопределяет определенную строку формы
У меня есть шаблон ветки формы, в котором я хочу проанализировать текст справки по определенным полям с помощью фильтра raw (он содержит html). Поле называется почтовый индекс в форме под названием Клиника
Согласно здесь http://symfony.com/doc/current/cookbook/form/form_customization.html#how-to-customize-an-individual-field
Шаблон формы:
{% extends 'AgriHealthAhpBundle::admin.html.twig' %}
{% form_theme form 'AgriHealthAhpBundle:Form:fields.html.twig' %}
{% block _clinic_postcode_row %}
<div class="row">
test<div class="small-12 medium-3 columns label">{{ form_label(form) }}</div>
<div class="small-12 medium-6 columns widget">
{{ form_widget(form) }}
<div class="error">
{{ form_errors(form) }}
</div>
</div>
<div class="small-12 medium-3 columns help">
{% if help is defined %}
{{ help|raw }}
{% endif %}
</div>
</div>
{% endblock %}
{% block admin -%}
<h1>New Clinic</h1>
{{ form(form) }}
<div class="row form_actions">
<div class="small-12 medium-offset-3 medium-2 columns submit">
<button type="submit" id="agrihealth_ahpbundle_clinic_submit_visible" name="agrihealth_ahpbundle_clinic[submit]">Create</button>
</div>
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('#agrihealth_ahpbundle_clinic_submit_visible').click(function(){
jQuery('form[name="agrihealth_ahpbundle_clinic"]').submit();
});
});
</script>
<div class="small-12 medium-2 columns cancel">
<a href="{{ path('clinic') }}">
Cancel
</a>
</div>
<div class="small-12 medium-2 end columns cancel">
<a href="{{ path('clinic') }}">
Back to List
</a>
</div>
</div>
{% endblock %}
ahpbundle/Ресурсы/представления/Форма/поля.html.ветка
{% block form_row %}
{% spaceless %}
<div class="row">
<div class="small-12 medium-3 columns label">{{ form_label(form) }}</div>
<div class="small-12 medium-6 columns widget">
{{ form_widget(form) }}
<div class="error">
{{ form_errors(form) }}
</div>
</div>
<div class="small-12 medium-3 columns help">
{% if help is defined %}
{{ help }}
{% endif %}
</div>
</div>
{% endspaceless %}
{% endblock form_row %}
Любой может увидеть то, что я упустил из виду, я пытался
{% block _clinic_postcode_row %}
И
{% block _Clinic_postcode_row %}
Решение
Согласно принятому ответу, блок строк формы должен быть полностью идеализирован сокращенным именем пакета. Самый простой способ - просмотреть исходный код формы и определить текст, используемый в каждом поле ввода, и имя формы="":
1 answers
Заменить
{% form_theme form 'AgriHealthAhpBundle:Form:fields.html.twig' %}
С
{% form_theme form with ['AgriHealthAhpBundle:Form:fields.html.twig', _self] %}
Поскольку вы оформляете строку внутри шаблона действия, при применении отдельного шаблона формы вам необходимо указать несколько шаблонов
Вам также необходимо указать полное имя пути к вашему блоку строк, например
{% block _agrihealth_ahpbundle_clinic_postcode_row %}