ho un semplice problema.Symfony2 -> Twig -> Form -> Field -> Set rendered = true
Ho una forma con un campo, ad esempio:
$builder
->add('x')
->add('y')
->add('z')
;
Nei miei file ramoscello ho usato più blocchi e voglio smettere di rendere i campi ... osservo il b.html.twig file!
a.html.twig
{% block body %}
{% block form %}
{{ form_widget(form) }}
{% endblock form %}
{% endblock body %}
b.html.twig
{% block form %}
{{ form.x.set('rendered', true) | default() }}
{{ parent() }}
{% endblock form %}
se mi tolgo la "default()" ottengo l'errore, che la sopraelevazione oggetto essere convertito in una stringa. E in realtà il modulo rende tutti i campi ... Compreso il campo x. Ma non dovrebbero rendere il campo x ...
Grazie in anticipo!
Il problema è che uso un tema di modulo globale che contiene "form_widget (form)" come predefinito. Ho bisogno di un campo in fondo e perché avrei impostato render = true. Quindi potrei usarlo in fondo e il mio tema globale non renderà il campo ... – PatrickB
aggiornato la mia risposta ... la tua domanda esatta è come chiamare setRendered() per una riga in un modulo manualmente? – nifr
La domanda è come farlo con twig (solo) ^^ Al momento utilizzo una funzione di ramificazione fatta da sé: public function renderState (campo $ FormView) {$ field-> setRendered (true); } – PatrickB