从输出生成表单

时间:2013-04-27 23:40:12

标签: ruby-on-rails ruby

我有一个列出项目所有附件的视图

<% @project.project_attachments.each do |project_attachment| %>
<p>
<b><%= check_box_tag(project_attachment.name.to_sym) %>
<a href="<%= project_attachment.attachment %>"><%=(project_attachment.name)%></a>    </b>
</p>
<% end %>



<%= link_to 'Parse',  {:controller => "projects", :action => "parse" } %> |
<%= link_to 'Edit', edit_project_path(@project) %> |
<%= link_to 'Back', projects_path %>

我要做的是当用户点击解析时,它应该调用控制器解析,并传递所有“已检查”的附件名称。我怎样才能做到这一点 ?

1 个答案:

答案 0 :(得分:0)

将它们全部放在同一个form_tag中,并按照以下方式制作:

check_box_tag('project_attachments[]',project_attachment.id)

另外,将Parse设置为所述表单的提交按钮。

在控制器中,params[:project_attachments]将是一个包含已检查项目附件的所有id个数组的数组。请注意,如果未选中任何项目附件,params[:project_attachments]将为nil而不是空数组。