我有下面這段代碼,處理圖片上傳我的Django的項目,我的工作:Python的mkstemp後綴
def upload_handler(source):
fd, filepath = tempfile.mkstemp(prefix=source.name, dir=MEDIA_ROOT)
with open(filepath, 'wb') as dest:
shutil.copyfileobj(source, dest)
return MEDIA_URL + basename(dest.name)
所有工作正常,與上載的一部分,但mkstemp是救了我的形象在擴展名之後加上6個隨機後綴(例如test.png - > test.pngbFVeyh)。即使我在第二個代碼行中傳遞後綴,它也會附加它,但也會附加6個隨機字符。其他奇怪的事情發生在上傳文件夾(我的例子中爲MEDIA_ROOT)時,它與另一個空白的純文本文檔類型文件一起創建,其名稱與圖片名稱相同(例如test.pngbFVeyh)。我已閱讀有關mkstemp的文檔,但我沒有找到任何替代解決方案。
我讀過mkstemp被刪除臨時文件的文件中,也許我錯了這裏... – MariusNV 2013-03-18 11:50:36
@MariusNV的文件明確表示,「來電顯示是負責在用它做刪除的文件。」 。 – wRAR 2013-03-18 11:51:44
確定這部分我現在得到它,我必須照顧刪除臨時文件嗎?但後綴問題部分仍然如此? – MariusNV 2013-03-18 11:56:14