【发布时间】:2014-03-05 06:00:15
【问题描述】:
在 Rails 4.0 项目中,我使用了多文件上传插件。现在它正在通过ajax请求工作。 现在,我想避免重复文件上传,它应该显示正确的验证消息。文件上传页面也需要刷新。如何验证重复文件并刷新页面?
参考:http://hayageek.com/docs/jquery-upload-file.php#multi
Paperclip gem 版本是
paperclip (3.5.2, 2.3.11, 2.3.8)
在视图中,
<%= simple_form_for(@file, :as=>"file", :url=>create_files_path, :html=>{:multipart => true, :autocomplete=>"off"}) do |f| %>
<%= f.input :document, :as=>:file, :label =>false, :required => true %>
<% end %>
<script type="text/javascript">
$("#file_document").uploadFile({
url:"<%= create_files_path %>",
multiple:true,
showDone: false,
showProgress: true,
showError:true
});
</script>
【问题讨论】:
-
内容或名称是否重复?
-
需要按文件内容检查
-
最接近的是文件名、类型和大小,你不能轻易通过内容检查,尤其是二进制文件。
-
如果文件名不同但里面的内容相同,如何识别?这里的文件是文本文件而不是二进制文件。
-
您可以计算每个文件的 MD5 (
md5sum) 并进行比较。文件名与计算MD5无关。所以即使文件名改变了也能得到相同的文件
标签: jquery ruby-on-rails ruby paperclip