If I understand you correctly, then in your controller you would like an array of the checked items which you will access from params.
I have recently done this for assigning roles to users:
My controller action looked like this:
user_roles = params[:role]
user_roles.each do |job|
UserRole.create(:user_id => params[:user_id], :role_id => job.to_i)
redirect_to ‘somewhere else’
The params[:role] in this case is an array of checked options from the form. To see how this is achieved here is the view code:
<% for role in @roles %> <tr> <td><%= role.role_type %></td> <td><%= check_box_tag "role", [role.id](http://role.id), checked=false %></td> </tr> <% end %>
As you can see, the name for the check_box_tag is an array - role. The value that is returned is the id of the role (as a string - hence the to_i after job in the controller).
The value is only returned if the checkbox is checked so you get an array of all the checked id’s.