2013-05-05 8 views
0

reminders 열에 4 개의 체크 박스 값을 저장하려는 경우 티켓 모델.레일 - 체크 박스 값 저장

그러나 값이 저장되지 않거나이 "티켓"을 편집하여 다시 db에서 데이터를 가져 와서 true/false 값을 올바르게 표시 할 수 없습니다.

어떤 조언이 필요합니까?

<%= form_for(@ticket) do |f| %>  

<div> 
    <% [ 'S.T.A.R.T', 'E.N.D.E.D', 'URGENT' , 'Repeat Request' ].each do |reminder| %> 
    <br><%= check_box_tag 'reminders', reminder, (params[:reminders] || {}).include (reminder) %> 
    <%= reminder.humanize %> 
    <% end %> 
</div> 

<div class="actions"> 
    <%= f.submit %> 
</div> 

<% end %> 

답변

-1

/tickets/_form.html.erb

은 오히려 당신이 길을 check_box_tag 사용하는 것보다, form_for에서 제공하는 양식 빌더 객체를 사용하도록 변경합니다. 그것은 당신의 문제 (나는 생각한다)의 체크 박스의 이름이 정확하다는 것을 보증 할 것이다.

사용하지 않으므로 확인란이 레일스가 볼 것으로 예상되는 이름과 다른 이름을 사용하고 있기 때문에 양식을 제출할 때 매개 변수 이름이 레코드와 연결되지 않으며 따라서 이깁니다. 변경되지 않습니다. 자동이 체크되어 있는지 여부를 처리 할

<%= f.check_box_tag :reminder %> 

레일을 사용하려고하면 페이지가로드 :

+0

downvotes에 대한 어떤 특별한 이유? – PaReeOhNos