2016-02-29 65 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,操作系统最终也会丢弃该文件。