PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Rails 5 form_for avec tableau de cases à cocher

Il existe une collection_check_boxes méthode d'assistance pour cela :

<%= form_for @course do |f| %>
  <%= f.collection_check_boxes(:level, { 'One': 1, 'Two': 2, 'Three': 3 }, :last, :first) %>
<% end %>

Le troisième argument est la méthode utilisée pour obtenir la valeur de la "collection", et le quatrième est la méthode utilisée pour obtenir l'étiquette de la "collection". Cette méthode d'assistance convertit automatiquement le hachage en un tableau, c'est pourquoi j'utilise last et first ici.

Il est également possible de le styliser comme vous le souhaitez, par ex. en utilisant 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 %>