2017-06-20 43 views
1

我有一個dropzone問題:所有文件名在上傳到遠程時都是相同的。與Dropzone.js一起上傳的所有文件的名稱

這裏是我的代碼:

var AUTH_TOKEN=$('meta[name="csrf-token"]').attr('content'); 

     Dropzone.autoDiscover = false; 
     var myDropzone = new Dropzone("div#mydropzone",{ 
      url: "<%= professionnel_diagnostiqueur_diagnostiqueurdevi_diagnostiqueurreponses_path(@devi.diagnostiqueur.professionnel.id,@devi.diagnostiqueur.id,@devi.id) %>", 
      autoProcessQueue: false, 
      uploadMultiple: true, 
      addRemoveLinks:true, 
      parallelUploads:10, 
      maxFilesize: 15, 
      params:{ 
       'authenticity_token': AUTH_TOKEN 
      }, 
      successmultiple: function(data,response){ 
       $('#msgBoard').append(response.message).addClass("alert alert-success"); 
       $('#msgBoard').delay(2000).fadeOut(); 
       $('#fileslist').val(response.filesList); 
       $('#photographedit').off('submit').submit(); 
      } 
     }); 

     $('#photographedit').submit(function(e){ 
      if(myDropzone.getQueuedFiles().length > 0){ 
       e.preventDefault(); 
       myDropzone.processQueue(); 
      } 
     }); 

有此線程:Dropzone uploaded file have same name 但它是沒有答案

這線程建議添加一個隱藏字段:https://github.com/enyo/dropzone/issues/580

雖然我還沒有noob與JS。有人可以幫助我將正確的代碼添加到我的上述代碼的隱藏字段嗎?該dragndrop位於ID mydropzone和形式具有ID photographedit

+0

我有同樣的問題,使用相同的懸浮窗配置前更改文件名。所有文件都獲得最後添加的文件的文件名!你有什麼消息嗎? – ArisS

+0

不是。沒有嘗試下面的答案,但直覺上我知道它不會解決它。我通過代碼學院學習JS,這樣我就可以自己修復它,但不知道我會成功。你可以在我提供的其中一個鏈接中找到靈感,以防你知道如何調整JS並添加隱藏字段。 – Maxence

+1

啊!從Dropzone 5.0.1更新到當前版本5.1.1解決了我的問題!你在什麼版本上? – ArisS

回答

0

您可以將文件發送到服務器

myDropone.on('processingfile', function(file) { 
    file.name = file.name + Math.floor(Date.now()/1000); 
}); 
+0

謝謝Ariel,但我真的想保留用戶名,因爲用戶可以上傳PDF和圖像,並保持原始PDF名稱是非常有用的最終用戶.. – Maxence

+0

因此,在名稱末尾添加一個字符串 - > Math.floor(Date.now()/ 1000) –

+0

我正在嘗試這種方式。你能確認我應該放置你的代碼的位置嗎?代碼中的某處已經存在或在最後? – Maxence