2014-12-03 76 views
6

我有一個窗體樹枝模板,我想要解析一個特定的字段幫助文本與原始過濾器(它包含html)。該場被稱爲在一個名爲診所Symfony Twig覆蓋特定的表格行

形式郵編據此間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 /資源/視圖/表格/ fields.html.twig

{% 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 %} 

按照接受的答案,形式行塊需要與速記包名稱充分idetified。最簡單的方法是查看形式的源代碼,並確定在每個輸入字段和表格名稱使用的文本=「」:

enter image description here

回答

5

替換

{% form_theme form 'AgriHealthAhpBundle:Form:fields.html.twig' %}

{% form_theme form with ['AgriHealthAhpBundle:Form:fields.html.twig', _self] %}

由於您正在裝飾行內的行重刑模板,而應用單獨的表單模板,您需要指定多個模板

您還需要指定一個完全合格的路徑名的行塊如

{% block _agrihealth_ahpbundle_clinic_postcode_row %} 
+0

謝謝,這似乎是有道理的,但它似乎還沒有恢復。已清除緩存 – jdog 2014-12-04 00:56:08

+0

也許您正在指定行的錯誤路徑。查看生成的表單的來源以識別表單名稱。 – 2014-12-04 02:51:26

+0

@jdog,大概還是值得離開截圖的 – 2014-12-04 02:58:13