24 Jul
matte

matte il 24 July 2006 parla di Rails Snippet

Check_box e array di valori

A tutti sarà capitato di creare un form con una serie di checkbox con cui selezionare degli elementi. Se questi elementi sono oggetti con un proprio id sarebbe bello poter avere come variabili da elaborare nel post un array di id formato solamente dagli oggetti selezionati.

Per farlo occorre utilizzare l’helper check_box_tag invece del classico check_box:

    1 <% @products.each do |product| %>
    2 <p>
    3   <%= check_box_tag 'compare', product.id, checked = false,
    4   {:name => "compare[product_id][]"} %><%= product.name %>
    5 </p>
    6 <% end %>

dove @products è un array di prodotti e name un campo che identifica il prodotto.

A questo punto all’interno del controllore ci ritroviamo

    1 params[:compare][:product_id]

contente l’array dei prodotti selezionati.

Scrivi un commento