2017-06-22 22 views
1

我有一個Django的形式定義爲:初始化Django的多個文件場形狀

class FileFieldForm(forms.Form): 
    file_field = forms.FileField(widget=forms.ClearableFileInput(attrs={'multiple': True})) 

當我打開這個形式我的看法我使用:

file_form = FileFieldForm(request.POST, request.FILES) 
    files = request.FILES.getlist('file_field') 
    if file_form.is_valid(): 
     for f in files: 
      m = MyImages (
       image = f, 
       item = item 
      ) 
      m.save() 

我現在想初始化包含這些文件的表單並允許用戶更改,刪除和更新文件。

我的問題是: 1.如何在這種情況下初始化表單? 2.如何在用戶重新提交時檢查它們是否已更改?

感謝您的幫助

+0

您可以檢查使用該文件被改變校驗或不。您只需計算一次校驗和並將其存儲在數據庫中 –

回答

0

我無法找到一個方法來初始化的形式,所以我使用的查詢集,而不是和他們顯示像這樣:

  <label for="id_file_field" class="btn-abysm center">Upload Images</label><br> 
       {{ file_form.file_field }} 
       <div id="result" ondrop="drop(event)" ondragover="allowDrop(event)"> 
        {% for f in myimages %} 
         <span><img class="image-thumbnail" draggable="true" ondragstart="drag(event)" id="drag{{ forloop.counter }}" src="{{ f.image.url }}" ></span> 
        {% endfor %} 
       </div>