2017-02-27 3 views
-1

ich bin neu auf Schienen und ich möchte Radio-Buttons zu meiner Rails-Anwendung hinzufügen. Ich weiß nicht, ob ich Edelsteine ​​oder irgendetwas anderes installieren muss. Ich sah gerade diesen Code in einer anderen App:Wie kann ich Optionsfelder in Rails korrekt verwenden?

<% @roles.each do |role| %> 
     <div class="radio"> 

      <% radio_ %> 
      <%= radio_button_tag "user[role_ids][]", role.id, @user.roles.include?(role) %> 
      <%= role.description %> 
     </div> 
    <% end %> 

So habe ich Benutzerrollen und IDs erstellt, damit ich diese Schaltflächen verwenden kann. Mein Cursor über <% radio_%> sagt "kann radio_ nicht finden".

+1

haben Sie versuchen, diese Zeile zu entfernen und was passiert, wenn Sie entfernen? –

+0

Dann erhalte ich die Fehlermeldung undefinierte Methode 'Rollen'. Wo muss ich sie definieren? – Feidex

+0

Sind Sie sicher, dass Sie 'Benutzer'' has_many' Beziehung zu 'Rollen' haben? –

Antwort

0

Ich schlage vor, Check-Box zu verwenden, wenn Sie nach mehreren Auswahl von Rollen suchen, in Radio-Button können Sie nur eine Rolle wählen, auch ich nehme an, Sie verwenden rolify gem, also besser zu has_role? Methode.

@roles=current_user.roles 

<%[email protected] do |role| 
    <div class='radio'> 
    <%=label_tag role.name %> 
    <%=check_box_tag "user[role_ids][]", role.id, current_user.has_role?(role) %> 
<% end %> 
Verwandte Themen