我想將下載的圖像保存爲如下所示的路徑:media/images/[user.pk] /直接從urllib庫中的urlretrieve發送,這是可能的,什麼是最優雅的方式?如何在django媒體文件中創建目錄(最佳方式)?
這是所使用的代碼片段:
這裏我用urlretrieve與路徑一樣... /媒體/圖像/ [user.pk]/[filename.jpg]
file_path, header = urlretrieve(image_url, os.path.join( MEDIA_ROOT, get_image_path( self, 'profile_image_'+str( datetime.utcnow().strftime("%Y%m%d_%H%M"))+'.jpg
下面是定義的函數,與文件名
def get_image_path(instance, filename): return os.path.join('images', str(instance.pk), filename)
,當我跑我得到一個錯誤,因爲該文件不存在:
FileNotFoundError在/ REST /的oauth2 /谷歌 [錯誤2]沒有這樣的文件或目錄:「C:\ XAMPP \ htdocs中\ BookProjectFresh \媒體\ images \ 21 \ profile_image_20160723_0801.jpg'
我知道我可以通過首先將文件加載到臨時文件夾中,然後從那裏加載並放入django模型來實現該目的,如果它不存在,它會自動創建文件路徑,但後來我有兩個文件在我的電腦上有相同的內容。或者將是與os.path.makedirs做到這一點的最好方法?請如果你知道任何其他方式分享它。