django裏面文件上傳處理處理

最近,寫一個上次文件的django。死活傳不過去。html

在大神的幫助下面,最終仍是成。 不過也發現一個問題:django

django 官網文檔:https://docs.djangoproject.com/en/1.8/topics/http/file-uploads/ spa

表單定義code

class UploadFileForm(forms.Form):
    title = forms.CharField(max_length=50)
    file = forms.FileField()

表單對象生成.orm

form = UploadFileForm(request.POST, request.FILES)htm

request.POST裏面是除了request.FILES外其餘的參數,這裏好比title.對象


可是奇怪的是若是我UploadFileForm裏面只有一個tile。這裏寫成form = UploadFileForm( request.FILES),就是會報錯…………(悲催的我搞了很久沒明白,第一個參數)ip

發現這個第一個參數是被用來判斷布爾值的。難道是用來YY的?寫成UploadFileForm( {},request.FILES)就沒問題了。文檔


順便貼下保存方法:get

def handle_upload_file(f):

    """save the file which is loaded """

    print('in handle')

    try:

        path = UPLOADED_FILE_DIRS + time.strftime('/%Y/%m/%d/%H/%M/%S/')

        print(path)

        if not int(os.path.exists(path)):

            os.makedirs(path)

            path_file_name = path+f.name

            print(path_file_name)

            destination = open(path_file_name, "wb+")

            for chuck in f.chunks():

                destination.write(chuck)

            destination.close()

    except Exception as e:

        print(e)

    return path_file_name



html中設置enctype="multipart/form-data"

相關文章
相關標籤/搜索