Forum: Ruby on Rails Check Box and Radio Button

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
77b62b33c21ad22b897eebbb6c24fe46?d=identicon&s=25 Naveen Naveen (psnavaneethan)
on 2009-04-16 06:52
      I am using multiple check box and a radio
button and when I click the "Submit" button, it calls the "create"
method it is inserting only 1 value for checkbox and also for the radio
button.
Could you please tell how to insert multiple check box values in create.
Please send me the link if you have any sample programs.



     Also, in the scaffold edit page, the default "edit" method displays
all the fields (including checkbox and radio buttons) as
"text_field"(text box) with only single value.
Could you please tell how to populate multiple checkbox and radio
buttons in the edit page with the values populating.
Please send me the link if you have any sample programs.
C42c706fab23da0b6d3cd2cfbb8db27d?d=identicon&s=25 Salil Gaikwad (salil)
on 2009-04-16 08:32
>       I am using multiple check box and a radio
> button and when I click the "Submit" button, it calls the "create"
> method it is inserting only 1 value for checkbox and also for the radio
> button.
> Could you please tell how to insert multiple check box values in create.
> Please send me the link if you have any sample programs.
<% for something in @something %>
   <%= check_box_tag name[], somethind.id, checked = false  %>
<% end %>
and you receive the id's of the checked check boxes in array of name
i.e.  params[:name]
77b62b33c21ad22b897eebbb6c24fe46?d=identicon&s=25 Naveen Naveen (psnavaneethan)
on 2009-04-16 11:36
Salil Gaikwad wrote:
>
>>       I am using multiple check box and a radio
>> button and when I click the "Submit" button, it calls the "create"
>> method it is inserting only 1 value for checkbox and also for the radio
>> button.
>> Could you please tell how to insert multiple check box values in create.
>> Please send me the link if you have any sample programs.
> <% for something in @something %>
>    <%= check_box_tag name[], somethind.id, checked = false  %>
> <% end %>
> and you receive the id's of the checked check boxes in array of name
> i.e.  params[:name]


__________________________________________________________________________

Thanks Salil for your reply.

I am using the checkbox and following is the code.

Java<%=check_box("employees", "skills", {}, "Java", "Java")%>
Rails<%=check_box("employees", "skills", {}, "Rails", "Rails")%>
C<%=check_box("employees", "skills", {}, "C", "C")%>


   Here even if I select both Java and Rails, only Java value is
selected and inserting in database. Could you please tell to make both
the values inserted into the database.


    Also, in the scaffold edit page, the default "edit" method displays
all the fields (including checkbox and radio buttons) as
"text_field"(text box) with only single value.
Could you please tell how to populate multiple checkbox and radio
buttons in the edit page with the values populating.
Please send me the link if you have any sample programs.

__________________________________________________________________________
C42c706fab23da0b6d3cd2cfbb8db27d?d=identicon&s=25 Salil Gaikwad (salil)
on 2009-04-16 12:37
> Java<%=check_box("employees", "skills", {}, "Java", "Java")%>
> Rails<%=check_box("employees", "skills", {}, "Rails", "Rails")%>
> C<%=check_box("employees", "skills", {}, "C", "C")%>
>    Here even if I select both Java and Rails, only Java value is
> selected and inserting in database. Could you please tell to make both
> the values inserted into the database.

this is because you are giving same name [employees, skills] to both the
checkboxes.
if you change it as follows.

Java<%=check_box("employees", "skills", {}, "Java", "Java")%>
Rails<%=check_box("employees", "skills1", {}, "Rails", "Rails")%>

and if ypu select both Java and Rails it will give following result

"employees"=>{"skills1"=>"Rails", "skills"=>"Java"}

>     Also, in the scaffold edit page, the default "edit" method displays
> all the fields (including checkbox and radio buttons) as
> "text_field"(text box) with only single value.
> Could you please tell how to populate multiple checkbox and radio
> buttons in the edit page with the values populating.
> Please send me the link if you have any sample programs.
>

sorry, i didn't  get this .......please explain it in details.
C42c706fab23da0b6d3cd2cfbb8db27d?d=identicon&s=25 Salil Gaikwad (salil)
on 2009-04-16 12:57
if you are insist on a same name then you can also use.
Java<%=check_box_tag "skills[]",  "Java" %>
Rails<%=check_box_tag "skills[]",  "Rails" %>

on selecting both and then submit you get.

"skills"=>["Java", "Rails"],
77b62b33c21ad22b897eebbb6c24fe46?d=identicon&s=25 Naveen Naveen (psnavaneethan)
on 2009-04-16 15:00
Thanks Salil for your help.

I had given like

Java<%=check_box_tag "employees", "skills[]",  "Java" %>
Rails<%=check_box_tag "employees", "skills[]",  "Rails" %>

since it belongs to the "employee" object. So both the checkboxes (Java
and Rails) are selected in the "new" page.



In the controller, I had given

@employees = Employees.new(@params['employees'])
@employees.save

Also in the DB, I am having a table called as "employees" and in that
"skills" is a column.

Is it possible to have a single column "skills" for multiple checkboxes
(Java, Rails and C)

Can you please suggest what needs to be done.
This topic is locked and can not be replied to.