Cannot figure out how to handle multi checkbox

I have a checkbox that is not tied to a model. Basically, here’s what
the beginning looks like in the view:

<% for entrant in @entrants %>
<tr class="<%= cycle(“even”, “odd”) %>" >

<%= check_box (“to_check”, entrant.firstname, {},
checked = “false”) %>

This submits to a controller action that has only the following line:

@firstnames = params[:to_check]

I’m trying to display the results on the next page:

  <% for firstname in @firstnames  %>
        <br />
        <%=h firstname %>

    <% end %>

This seems really simple. Right now it’s displaying every firstname in
the array whether it was checked or not. I tried another way and it
only returned the first element in the array (so the names overwrote
each other). How do I check in the controller action method to see
which ones were checked? I’m coming from a Java web background and am a
beginner with Ruby on Rails and have been Googling extensively, but I’m
not understanding the examples, and the two recent Rails 2 books I have
(one in PDF form) are confusing me as well.

I tried to figure out how to use check_box_tag as well in case that’s
more appropriate in this case, but I’m just not sure what to do. How
should I change the form code and the controller so that I can retrieve
only the firstnames that were checked? The HTML checkboxes should only
send up the firstnames when checked.

Thanks so much!

take a look at http://railscasts.com/episodes/17

On Jul 23, 8:13 am, Naija G. [email protected]

I had seen that, but it’s not clear to me (and some of the people who
commented on there agree with me). As I said, my checkboxes are not
tied to a model.

Dejan D. wrote:

take a look at http://railscasts.com/episodes/17

On Jul 23, 8:13�am, Naija G. [email protected]

Actually, I wanted the results in a collection or array to iterate over
in my next view, so this is what worked for that last line in the
controller:

@item.keywords = selected_keywords

I was just trying really hard to use the Rails view helpers for a
checkbox, but if I have to use straight HTML, then by no means am I
opposed. It just seems like one of those Rails helpers should work for
me, but I figure it’s because I don’t understand them and when I look at
the examples in the API docs, they don’t seem to be applicable for my
case (or I just don’t get them).

Thanks…

Dejan D. wrote:

As I find somewhere on the net:

View (as many times as needed):

    <input id="item_selected_keywords" name="selected_keywords[]"
    type="checkbox" value="exterior" />

Controller:

    selected_keywords = params[:selected_keywords]
    @item.keywords = selected_keywords.join(" ")

On Jul 23, 3:43 pm, Naija G. [email protected]

As I find somewhere on the net:

View (as many times as needed):

    <input id="item_selected_keywords" name="selected_keywords[]"
    type="checkbox" value="exterior" />

Controller:

    selected_keywords = params[:selected_keywords]
    @item.keywords = selected_keywords.join(" ")

On Jul 23, 3:43Â pm, Naija G. [email protected]

You can use the helper check_box_tag

See
http://api.rubyonrails.com/classes/ActionView/Helpers/FormTagHelper.html#M001704

On Wed, Jul 23, 2008 at 11:15 AM, Naija G.

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs