使用新的Django 1 0檔案上傳寫法

2021-08-29 16:55:16 字數 671 閱讀 4713

公升級到django 1.0後,原來的檔案上傳程式不能執行,報告了下列錯誤:

原來的上傳程式如下:

file = request.files['file']

file_name = get_unique_file_name()  #生成唯一的檔名

path1 = os.path.join(settings.divo_temp_root, 'xf')

fd = open('%s/%s' % (path1, file_name), 'wb') 

fd.write(file['content']) 

fd.close()

現在修改為:

file = request.files['file']

file_name = get_unique_file_name()

path1 = os.path.join(settings.divo_temp_root, 'xf')

destination = open('%s/%s' % (path1, file_name), 'wb+')

for chunk in file.chunks():

destination.write(chunk)

destination.close()

從上面的新程式中可以看出,django解決了大檔案上傳時的記憶體占用問題。

045 檔案的使用

目錄 三 檔案的開啟和關閉 四 檔案內容的讀取 4.2 檔案的逐行操作 五 資料的檔案寫入 六 單元小結 十天快速入門 python完整教程目錄 檔案是資料的抽象和集合 文字檔案 vs.二進位制檔案 檔案是資料的抽象和集合 檔案是資料的抽象和集合 中國是個偉大的國家 f.txt檔案儲存 中國是個偉大...

Python08檔案的使用

a open 檔名 開啟模式 編碼方式 編碼方式 utf 8預設可以忽略 開啟模式 讀a.read size 讀入前size的長度 a.readline size 讀入一行,的前size的長度 a.readlines hint 讀入所有行,以行形成列表,的前hint的長度 寫a.write s 寫入...

13 檔案修改及函式的基本使用

一 檔案修改 1.1檔案修改的兩種方式 1.1.1 方法一 實現思路 將檔案內容一次性全部讀入記憶體中,在記憶體中修改完畢後在覆蓋寫回原檔案 優點 檔案修改中,不會生成新的檔案占用儲存 缺點 會過多的占用記憶體 with open r a.txt mode rt encoding utf 8 as ...