2014-12-03 11 views
6

Ho un modello di ramoscello di modulo, in cui voglio analizzare un testo di aiuto di campi specifici con il filtro raw (contiene html). Il campo si chiama Cap in una forma chiamata ClinicaSymfony Twig sovrascrive la riga del modulo specifico

Secondo qui http://symfony.com/doc/current/cookbook/form/form_customization.html#how-to-customize-an-individual-field

modello di modulo:

{% 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/Resources/views/Form/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 %} 

Chiunque può vedere cosa ho trascurato, ho provato

{% block _clinic_postcode_row %} 

e

{% block _Clinic_postcode_row %} 

Soluzione

Come per risposta accettata, il blocco di righe modulo deve idetified pienamente con nome fascio abbreviata. Il modo più semplice è quello di visualizzare il codice sorgente della forma e di identificare il testo utilizzato in ogni campo di input e il nome del modulo = "":

enter image description here

risposta

5

Sostituire

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

con

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

Dato che stai decorando la fila all'interno di modello zione, durante l'applicazione del modello di modulo separato è necessario specificare più modelli

È inoltre necessario specificare un nome percorso completo al blocco fila come

{% block _agrihealth_ahpbundle_clinic_postcode_row %} 
+0

Grazie, che sembra avere senso, ma sembra non essere ancora raccolto. Hai svuotato la cache – jdog

+0

Probabilmente stai specificando il percorso sbagliato per la riga. Visualizza l'origine del modulo generato per identificare il nome del modulo. –

+0

@jdog, probabilmente vale ancora la pena di lasciare lo screenshot dello screenshot –

Problemi correlati