Richten Sie die Kontrollkästchen für f.collection_check_boxes an Simple_Form aus

Ich verwende RoR und ich verwende den Edelstein Simple_Form für meine Formulare. Ich habe eine Objektbeziehung, in der ein Benutzer mehrere Rollen haben kann. Während der Erstellung kann der Administrator auswählen, welche Rollen auf den neuen Benutzer angewendet werden sollen. Ich möchte, dass die Rollen ihr Kontrollkästchen links und ihren Namen rechts in horizontaler Anordnung haben.

// "Box" Admin //

anstelle des Stroms

//

"Box"

Administrator

//

Mein aktueller Code zum Anzeigen der Rollen ist dieser.

  <div class="control-group">
    <%= f.label 'Roles' %>
    <div class="controls">
      <%= f.collection_check_boxes 
                 :role_ids, Role.all, :id, :name %>
    </div>
  </div>

Der Teil, an dem ich am meisten hängen bleibe, ist die Tatsache, dass die f.collection_check_boxes Code wie diesen generieren.

<span>
  <input blah blah />
  <label class="collection_check_boxes" blah>blah</label>
</span>

Das macht es schwierig für mich, eine CSS-Klasse zu bekommen, da es 3 Komponenten gibt, die berührt werden müssen. Ich habe versucht, dem: html-Hash Dinge wie Dummy-Klassen hinzuzufügen, aber die Dummy-Klasse wird im gerenderten HTML-Code nicht einmal angezeigt.

Jede Hilfe wird sehr geschätzt

EDIT: Lösung

Dank Baldrick sieht mein Arbeitsbereich so aus.

<%= f.collection_check_boxes :role_ids, Role.all, :id, :name,
      {:item_wrapper_class => 'checkbox_container'} %>

Und mein CSS ist wie folgt

.checkbox_container {
  display: inline-block;
  vertical-align: -1px;
  margin: 5px;
 }
.checkbox_container input {
  display: inline;
 }
.checkbox_container .collection_check_boxes{
  display: inline;
  vertical-align: -5px;
 }

Antworten auf die Frage(4)

Ihre Antwort auf die Frage