# Check\_box\_tag doesn't insert parameter into table

**URL:** <https://www.ruby-forum.com/t/check-box-tag-doesnt-insert-parameter-into-table/181724>\
**Category:** Rails\
**Created:** [January 17, 2010, 1:38am UTC](https://www.ruby-forum.com/t/check-box-tag-doesnt-insert-parameter-into-table/181724 "2010-01-17T01:38:51Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Demetrius](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/f08c70/32.png) [@Demetrius](https://www.ruby-forum.com/u/Demetrius)\
**Post date:** [January 17, 2010, 1:38am UTC](https://www.ruby-forum.com/t/check-box-tag-doesnt-insert-parameter-into-table/181724/1 "2010-01-17T01:38:51Z")

</div>

Help! Can anyone see why my code isn’t inserting the course\_id  
parameter into my table?

\<%= f.label :course\_id %\>  
 \<% for course in current\_user.courses.find(:all, :order =\> 'order\_taught') %\>

```
  <%= check_box_tag 'assessment[course_id][]', course.id %>
  <%=h course.name %>

<% end %>

```

Below, you can see the Development Log. It shows that the parameter  
for “course\_id”=\>[“2”]. But as you can see, the INSERT INTO is  
inserting a value of 1 for course\_id:

Processing AssessmentsController#create (for 127.0.0.1 at 2010-01-16  
16:27:24) [POST]  
Parameters: {“commit”=\>“Create”,  
“authenticity\_token”=\>“Z8yZOo9q2tz6IC1jmV33qvMO7ULRzcJ8e7q6B0xHP9Y=”,  
“assessment”=\>{“name”=\>"", “date(1i)”=\>“2010”, “date(2i)”=\>“1”, “date  
(3i)”=\>“16”, “standard\_id”=\>“9”, “course\_id”=\>[“2”],  
“strand\_id”=\>“2”}}  
e[4;36;1mUser Load (0.0ms)e[0m e[0;1mSELECT \* FROM “users” WHERE  
(“users”.“id” = 12) LIMIT 1e[0m  
e[4;35;1mAssessment Create (0.0ms)e[0m e[0mINSERT INTO  
“assessments” (“name”, “created\_at”, “updated\_at”, “date”, “user\_id”,  
“standard\_id”, “strand\_id”, “course\_id”) VALUES(’’, ‘2010-01-17  
00:27:24’, ‘2010-01-17 00:27:24’, ‘2010-01-16’, 12, 9, 2, 1)

Any help would be greatly appreciated!

---

<div class="post-metadata">

**Author:** ![Demetrius](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/f08c70/32.png) [@Demetrius](https://www.ruby-forum.com/u/Demetrius)\
**Post date:** [January 17, 2010, 6:38pm UTC](https://www.ruby-forum.com/t/check-box-tag-doesnt-insert-parameter-into-table/181724/2 "2010-01-17T18:38:43Z")

</div>

On Jan 16, 7:37Â pm, Demetrius [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Â Â Â \<%=h course.name %\>
> 
> Â Â \<% end %\>
> 
> Below, you can see the Development Log. It shows that the parameter  
> for “course\_id”=\>[“2”]. But as you can see, the INSERT INTO is  
> inserting a value of 1 for course\_id:

Not sure where the 1 is coming from, but what you’re doing still  
doesn’t make sense. What is the expected behavior if the user checks  
two boxes, passing :course\_id =\> [“2”, “5”] in? You may have a  
belongs\_to/has\_many reversed here…

–Matt J.

---

<div class="post-metadata">

**Author:** ![Demetrius](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/f08c70/32.png) [@Demetrius](https://www.ruby-forum.com/u/Demetrius)\
**Post date:** [January 17, 2010, 6:49pm UTC](https://www.ruby-forum.com/t/check-box-tag-doesnt-insert-parameter-into-table/181724/3 "2010-01-17T18:49:15Z")

</div>

2010/1/17 Demetrius [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> Â Â Â \<%=h course.name %\>
> 
> Â Â \<% end %\>
> 
> Below, you can see the Development Log. It shows that the parameter  
> for “course\_id”=\>[“2”]. But as you can see, the INSERT INTO is  
> inserting a value of 1 for course\_id:

I guess the problem is that course\_id is being passed as an array due  
to the [] in the check\_box\_tag call. Would a radio set be more  
appropriate so only one can be selected?

Colin

---

<div class="post-metadata">

**Author:** ![Demetrius](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/f08c70/32.png) [@Demetrius](https://www.ruby-forum.com/u/Demetrius)\
**Post date:** [January 18, 2010, 11:59am UTC](https://www.ruby-forum.com/t/check-box-tag-doesnt-insert-parameter-into-table/181724/4 "2010-01-18T11:59:25Z")

</div>

Demetrius, could you show us the controller code which handles that  
form?
