2017-10-14 23 views
2

Je crée des boutons radio avec simple_forms en utilisant collection_radio_buttons:Propriétés collection_radio_buttons à simple_forms pour envelopper le tout dans div

<div class="toggle-group"> 
    <%= f.collection_radio_buttons :question, 
    [[true, 'Yes'] ,[false, 'No']], :first, :last, 
    item_wrapper_tag: false, boolean_style: :inline %> 
</div> 

pour obtenir ceci:

<div class="toggle-group"> 
    <input type="hidden" name="user[question]" value=""> 
    <input type="radio" value="true" name="user[question]" id="user_question_true"> 
    <label class="collection_radio_buttons" for="user_option_true">Yes</label> 
    <input type="radio" value="false" name="user[option]" id="user_option_false"> 
    <label class="collection_radio_buttons" for="user_option_false">No</label> 
</div> 

J'ai créé une css qui génère le type d'entrée 'caché'. Que dois-je ajouter dans collection_radio_buttons pour obtenir le div wrapper avec class = "toggle-group" au lieu de l'écrire moi-même?

Répondre

1
<%= f.collection_radio_buttons :question, 
    [[true, 'Yes'] ,[false, 'No']], :first, :last, 
    item_wrapper_tag: false, boolean_style: :inline, 
    collection_wrapper_tag: "div", 
    collection_wrapper_class: "toggle-group" %> 

Ajouter collection_wrapper_tag: "div", pour envelopper la collection dans une étiquette. Ajoutez collection_wrapper_class: "toggle-group" pour définir la classe sur l'étiquette div. Docs: here et

+1

Parfait! Merci. –