2016-02-29 99 views
0

我正在尋找一種上傳文件到django服務器的方式。事情是,我不想保存在我只是打開它並獲取數據進行處理。我在這裏查看了一些例子,但我找不到任何答案。我可能只是沒有找到一個正確的事情,請幫助。Django上傳處理

我不想使用模型,只是一個帶有上傳按鈕的簡單網站。

謝謝!

回答

1

使用的一種形式:

class UploadForm(forms.Form): 

    file = forms.FileField() 

    def process(self): 
     file = self.cleaned_data.get('file') 
     # do whatever you need here to process the file 
     # e.g. data = file.read() 

在您看來,叫process()表單上的用戶上傳的文件和表格驗證成功後。

def my_view(request): 
    if request.method == 'POST': 
     form = UploadForm(files=request.FILES) 
     if form.is_valid(): 
      form.process() 
      return ... 

根據文件的大小和FILE_UPLOAD_HANDLERS你的Django設置,該視圖做,如果使用MemoryFileUploadHandler處理後的文件被立即丟棄。如果使用TemporaryFileUploadHandler,操作系統最終也會丟棄該文件。