我已經安裝了PIL,但每當我試圖通過Django管理上傳.png文件到圖像領域我的模型,我得到這個錯誤:Django ImageField「上傳有效的圖片,您上傳的文件不是圖片或損壞的圖片。」
「上傳有效的圖片您上傳的文件要麼不是圖像或損壞的圖像。「
其他圖像類型工作正常。我嘗試了幾個不同的PNG文件。
我已經嘗試在安裝pypng,libpng-dev等後重建PIL。並且在ubuntu服務器上。
我已經安裝了PIL,但每當我試圖通過Django管理上傳.png文件到圖像領域我的模型,我得到這個錯誤:Django ImageField「上傳有效的圖片,您上傳的文件不是圖片或損壞的圖片。」
「上傳有效的圖片您上傳的文件要麼不是圖像或損壞的圖像。「
其他圖像類型工作正常。我嘗試了幾個不同的PNG文件。
我已經嘗試在安裝pypng,libpng-dev等後重建PIL。並且在ubuntu服務器上。
當你編譯PIL時,應該說它是否已經用PNG支持編譯,但是如果你自己安裝它有問題,我會建議你使用ubuntu自帶的版本。它的奇怪命名,但具有安裝方便:
apt-get install python-imaging
我需要在虛擬環境中安裝。 – DantheMan
我發現,在Ubuntu上建立公益訴訟可能會導致問題,因爲libpng
是一個非標準的位置,PIL無法找到它。
在PIL下載到的文件夾中,編輯setup.py
。查找以下行:
JPEG_ROOT = None
,並更改爲
JPEG_ROOT = '/usr/lib/i386-linux-gnu/'
然後重建PIL並檢查該PNG支持包括接近尾聲的消息。
我知道這是奇怪的修改JPEG_ROOT
,當你想添加PNG支持,但setup.py
將查找JPEG_ROOT
爲libpng
了。
當您安裝PIL時,您是否確定它看到您的libpng等並確認它具有PNG兼容性? –