我添加了一个上传表单,以便人们可以将HTML文件上传到我的网站。如何一次允许多次上传?我添加了jquery-fileupload-rails gem,让用户可以选择多个文件。但是,服务器只处理一个文件。我该如何解决?
更多详情
我的代码如下所示,基于此Railscast。注意我没有处理表单中的模型,所以我使用field_tags代替。我没有为file_field_tag
添加名称,因为它的名称在添加文件后没有改变,尽管这可能是问题的一部分。
<%= form_tag import_items_path, multipart: true, id: "upload" do %>
<%= file_field_tag :file, multiple: true %>
<%= submit_tag "Import" %>
<% end %>
这里有一些用于fileupload jQuery的JS:
jQuery ->
$('#upload').fileupload
当我添加2个文件并单击上传时,只处理1个文件。这是日志:
参数:{“utf8”=&gt;“✓”,“file”=&gt; #&LT; ActionDispatch :: Http :: UploadedFile:0x ... @tempfile =#&lt; Tempfile:/ var / folders / gl /...> ;, @ original_filename =“sample.html”,@ content_type =“text / html”,... name = \“file \”;文件名= \ “sample.html \” ...}
我试过ajaxifying表单,但这也没有帮助。如何让Rails 4中的jquery-fileupload-rails工作?
答案 0 :(得分:3)
如果您将<%= file_field_tag :file, multiple: true %>
更改为<%= file_field_tag 'files[]', multiple: true %>
,则应该有效。
请参阅this相关的SO帖子。