2014-03-03 5 views
0

나는 form_for 또는 form_tag의 첫 번째 매개 변수가 무엇인지에 대해 여전히 혼란 스러울 때 사용할 수 있습니다. 하지만 기본적으로 방문자가 사이트에 콘서트 이벤트를 게시 할 수있는 웹 사이트를 만들고 있습니다. 이벤트는 모델입니다. 관리자는 제출 된 이벤트 목록을 볼 수 있으며 각 확인란에 체크 박스를 표시 한 다음 관리자가 승인하려는 이벤트를 확인하고 양식에서 제출하여 업데이트 할 수 있습니다. 은 이벤트 모델의 부울 필드입니다.한 클래스의 여러 객체를 하나의 양식으로 제출

나는이 post을 읽었지만, 마지막 대답의 다음에 form_tag에 대한 첫 번째 매개 변수를 어디에서 가져 왔는지 확실하지 않습니다.

나는 EventsUpdateController라는 새로운 컨트롤러가 필요하다고 생각했다. 지금까지 나는 이런 식으로 뭔가를 가지고 있지만 그것은 아주 옳지 않아 :

<%= form_tag events_update_path do %> 
    <% @unapproved_events.each do |event| %> 
    <%= fields_for "events[]", event do |e| %> 
     <tr> 
     <td><%= e.check_box :approved %></td> 
     <td><%= event.date.strftime('%A %B %-d') %></td> 
     <td><%= event.time.strftime('%l:%M %P') %></td> 
     <td><%= event.title %></td> 
     </tr> 
    <% end %> 
    <% end %> 
<% end %> 

답변

0

를 사용하여 귀하의 컨트롤러 액션에서

<%= form_tag events_update_path do %> 
    <% @unapproved_events.each do |event| %> 
    <tr> 
     <td><%= check_box_tag "event_ids[]", event.id, :id => "event-#{event.id}" %></td> 
     <td><%= event.date.strftime('%A %B %-d') %></td> 
     <td><%= event.time.strftime('%l:%M %P') %></td> 
     <td><%= event.title %></td> 
    </tr> 
    <% end %> 
    <%= submit_tag "Approve" %> 
<% end %> 

,

events_to_approve = Event.find(params[:event_ids]) 
+0

이 코드는 생산을 동일한 ID로 (다음 mikeglaz

+0

id를 수동으로 설정할 수 있습니다. 그러나 이름은 매개 변수에 대해 중요한 것입니다 – usha

+0

다음과 같이 작동합니다 : <% = check_box_tag "event_ids [# {event.id}]"%> – mikeglaz

관련 문제