Es gibt eine collection_check_boxes Hilfsmethode dafür:
<%= form_for @course do |f| %>
<%= f.collection_check_boxes(:level, { 'One': 1, 'Two': 2, 'Three': 3 }, :last, :first) %>
<% end %>
Das dritte Argument ist die Methode, die verwendet wird, um den Wert aus der „Sammlung“ zu erhalten, und das vierte ist die Methode, die verwendet wird, um das Label aus der „Sammlung“ zu erhalten. Diese Hilfsmethode konvertiert den Hash automatisch in ein Array, deshalb verwende ich last
und first
hier.
Es ist auch möglich, es so zu stylen, wie Sie es möchten, z. mit 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 %>