Có một collection_check_boxes phương thức trợ giúp cho việc này:
<%= form_for @course do |f| %>
<%= f.collection_check_boxes(:level, { 'One': 1, 'Two': 2, 'Three': 3 }, :last, :first) %>
<% end %>
Đối số thứ ba là phương thức được sử dụng để lấy giá trị từ "bộ sưu tập" và đối số thứ tư là phương thức được sử dụng để lấy nhãn từ "bộ sưu tập". Phương thức trợ giúp này tự động chuyển đổi Hash thành một mảng, đó là lý do tại sao tôi đang sử dụng last
và first
tại đây.
Cũng có thể tạo kiểu theo cách bạn muốn, ví dụ:sử dụng 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 %>