Rails 3 Form Helfer: UTF8 und andere versteckte Felder

8

Die Ansicht:

%Vor%

Ich renne mit Formhelfern herum. Der obige Code zeigt meine Ansichtsdatei sowie das von ihr erzeugte HTML. Was ist mit dem schrecklichen div voll von Inline-CSS, gefüllt mit versteckten Feldern, die ich nicht explizit verlangt habe? Welche Einstellungen führen dazu, dass diese Felder generiert werden? Gibt es eine Möglichkeit für mich, das Inline-CSS zu entfernen?

    
Levi Hackwith 01.10.2010, 04:02
quelle

2 Antworten

18

Diese Felder werden in Rails Forms für Robustheit generiert:

utf8=✓

Das verdeckte Feld utf8 stellt sicher, dass die Formularwerte als UTF8 übergeben werden. Dazu wird sichergestellt, dass mindestens ein UTF8-Zeichen im Formular übergeben wird. Die meisten Browser berücksichtigen die Codierung des Dokuments und behandeln die Formularwerte gleich, aber es gibt einen Browser, der ein Problem hat. Daher erhält utf8 ein Häkchen.

Das Authenticity_Token ist da, um Cross-Site-Request-Forgery zu verhindern.

Ähnliche versteckte Felder werden für Checkboxen generiert. Da nicht markierte Kontrollkästchen nicht an den Server gesendet werden, stellt ein verstecktes Feld sicher, dass ein "0" (false) -Wert gesendet wird: Dies ist hilfreich, wenn Sie ein Array von Kontrollkästchen haben.

Diese Felder werden in ein div mit Inline-Stilen eingeschlossen, um sicherzustellen, dass sie das Layout nicht beschädigen. Du könntest im Quellcode des Formular-Helfers herumstochern und dies überschreiben, aber ich würde es nicht empfehlen: Es ist minimal aufdringlich und es ist aus einem bestimmten Grund da.

    
Andrew Vit 01.10.2010, 04:19
quelle
4

Wenn Sie utf8=✓ loswerden möchten, könnten Sie an diesem Juwel interessiert sein, das es nur zu nicht-kompatiblen Browsern hinzufügt: ​​Ссылка

    
Jarl 27.11.2012 14:04
quelle

Tags und Links