2016-03-28 3 views
1

Ich erstelle mehrere Formulare für die gleiche Ressource auf einer Seite. Jedes dieser Formulare hat Optionsfelder.Benutzerdefinierte IDs für die Eingabe und Beschriftung mit den Optionsschaltflächen von Simple Form

Simple Form weist jedoch denselben Optionsfeldoptionen für alle Formulare die gleiche ID zu, wodurch ein Konflikt verursacht wird.

Wie kann ich jedes Formular mit einem Namespace versehen oder benutzerdefinierte IDs für jedes Label und jede Eingabe auswählen?

Antwort

3

Wenn Sie mehr simple_form_for Methoden in Ihrer Ansicht verwenden, sie sind nur clever wrappers um die form_for Einbau-Schienen Helfer, die die namespace Option unterstützt. Zitiert aus der form_for docs:

:namespace - Ein Namensraum für Ihre Form Einzigartigkeit von id, um sicherzustellen, auf Formularelemente Attribute. Dem Namespace-Attribut wird ein Unterstrich für die generierte HTML-ID vorangestellt.

Also, so etwas wie die folgenden funktionieren sollte:

<%= simple_form_for @resource, namespace: "first_form" do |f| %> 
... 
<% end %> 


<%= simple_form_for @resource, namespace: "second_form" do |f| %> 
... 
<% end %> 
+0

Das ist genau das, was ich brauchte, Vielen Dank! – alejoriveralara

Verwandte Themen