Wie mache ich mit form_rest () kein Feld mit Symfony2 anzeigen?
Habe ich angefangen, zu verwenden Symfony2, aber ich habe einige Probleme.
Ich wollte zu erbringen Felder von hand, aber es funktioniert nicht, weil mein Acker gemacht, indem mir angezeigt wird, mit der form_rest()
Funktion auch, so habe ich zwei gleiche Felder.
Hier ist mein code :
<div>
{{ form_errors(form.contenu) }}
<textarea id="{{ form.contenu.vars.id }}" name="{{ form.contenu.vars.full_name }}">{{ form.contenu.vars.value }}</textarea>
</div>
Und an der form am Ende, ich muss diesen :
{{ form_rest(form) }}
Aber es zeigt die "contenu" - Feld 🙁
Haben Sie eine Idee, was das problem ist ?
InformationsquelleAutor der Frage Minipipo1 | 2012-05-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Weitere option ist explizit markieren Sie das Feld als erbracht:
InformationsquelleAutor der Antwort Francesc Rosàs
{{ form_rest(form) }}
geht am Ende, nach dem Rendern jedes Feld auf "manuell". Wenn Sie es verwenden für die CSRF-token, das Sie können immer machen es mit:InformationsquelleAutor der Antwort gremo
Anderen meiner Meinung nach weniger hacky Weg, es zu tun, ist dies:
Er aus der offizielle Dokumentation (v3.0), so es ist ziemlich viel best-Practice - denke ich.
InformationsquelleAutor der Antwort Andresch Serj
Die situation, in die Sie nicht wollen, um zu zeigen, einige Feld schlägt vor, schlecht gestaltete form. Man konnte Sie füttern einige argument(s) in ist es
__construct
zu machen, bedingt (sagen, "einschließen/ausschließen" einige Felder), oder Sie könnte einfach erstellen Sie separateForm
Klassen (die, meiner Meinung nach, ein bisschen übertrieben).Hatte ich häufige Fall vor einigen Monaten, wenn die form Unterschied sich, wenn der Benutzer die eingefügten/aktualisierten Datensätze. Es war etwas wie:
Wenn für einige Gründe Sie sind nicht in der Lage umgestalten form-Klasse könnte man noch anzeigen, unerwünschte Felder, aber wickeln Sie Sie in
<div>
die CSS -display:none
Attribut. "Sie sind immer noch da" (und mit allen Mitteln verarbeitet werden, in der Regel), sind aber nicht sichtbar für die Benutzer.Hoffe, das hilft...
InformationsquelleAutor der Antwort Jovan Perovic