[英]Submitting multiple objects of one class on one form in Rails
我仍然对form_for
或form_tag
的第一个参数以及何时使用哪个参数感到form_tag
。 但基本上,我正在建立一个网站,访客可以在该网站上发布音乐会活动。 事件是一个模型。 管理员可以看到已提交事件的列表,我希望每个事件都有一个复选框,然后管理员可以检查他要批准的事件并在表单上单击“提交”,它们都将得到更新。 :approved
是事件模型中的布尔值字段。
我已经阅读了这篇文章,但是不确定他们在最后一个答案的后面在哪里获得了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 %>
使用check_box_tag
<%= 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])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.