Rails 4,ruby 2.0。 我想创建一个公共文件服务页面,其中包含每个文件的下载链接,并且可以通过复选框和"下载选中的文件"来检查多个文件以供下载。按钮。
我在index.html.erb中的代码
<% form_tag(controller: "files", action: "download_many", method: "get")%>
<h1>St.Catherines</h1>
<ul>
<% @stcatherines.each do |file|%>
<li><%= link_to file, :action => "download", :name =>file %></li>
<%check_box_tag(file)%>
<%end%>
<%submit_tag :value => "Download checked files" %>
</ul>
<%end%>
其中@stcatherines是一个字符串数组 下载链接有效,表单必须是错误的。 我遇到了一个奇怪的错误:
.../app/views/files/index.html.erb:11:
syntax error, unexpected keyword_ensure, expecting end-of-input
请注意,语法错误在第11行引发,我只有10行代码。
答案 0 :(得分:1)
我认为您错过了打开form_tag
并添加了结尾,导致语法错误。在do
声明后添加form_tag
应修复此问题...尝试将代码更改为以下内容(请注意第1行添加do
):
<% form_tag(controller: "files", action: "download_many", method: "get") do %>
<h1>St.Catherines</h1>
<ul>
<% @stcatherines.each do |file|%>
<li><%= link_to file, :action => "download", :name =>file %></li>
<% check_box_tag(file) %>
<% end # each %>
<%submit_tag :value => "Download checked files" %>
</ul>
<% end # form_tag %>