How to deal with array of checkbox values in Ruby 1.9.1?

Posted by Ola Tuvesson on Stack Overflow See other posts from Stack Overflow or by Ola Tuvesson
Published on 2010-03-27T19:56:23Z Indexed on 2010/03/27 20:03 UTC
Read the original article Hit count: 338

In Ruby 1.9.1 strings are no longer enumerable and string.each is undefined. This causes a problem when parsing values for an array of generated checkboxes since the field value, when submitted, becomes an array of strings. For example:

<% for map in Map.find(:all) %>
<%= check_box_tag "listing[map_ids][]", map.id %>
<%= map.title %>
<% end %>

This will result in an error, undefined method `each' for "1":String, in process_parameter_filter because map_ids is being passed as "map_ids"=>["1","2"] (if checkboxes with values 1 and 2 have been checked that is).

What is the recommended way to fix this?

© Stack Overflow or respective owner

Related posts about ruby-on-rails

Related posts about ruby