Det finns en collection_check_boxes hjälpmetod för detta:
<%= form_for @course do |f| %>
<%= f.collection_check_boxes(:level, { 'One': 1, 'Two': 2, 'Three': 3 }, :last, :first) %>
<% end %>
Det tredje argumentet är metoden som används för att få värdet från "samlingen", och det fjärde är metoden som används för att hämta etiketten från "samlingen". Den här hjälpmetoden konverterar automatiskt Hash till en array, det är därför jag använder last
och first
här.
Det går även att styla den som du vill t.ex. med Bootstrap:
<%= f.collection_check_boxes(:level, { 'One': 1, 'Two': 2, 'Three': 3 }, :last, :first) do |b| %>
<div class="form-check form-check-inline">
<%= b.check_box class: 'form-check-input' %>
<%= b.label class: 'form-check-label' %>
</div>
<% end %>