私は実行Django 1.4
していPIL 1.1.7
て、でvirtualenv
管理されていpip
ます。管理インターフェースを介してJPEGファイルをアップロードするたびに、次のエラーが発生します。Upload a valid image. The file you uploaded was either not an image or a corrupted image.
多くのUbuntuユーザーが報告しているように、インストール時に、PILは誤って検索しました/usr/lib/
がlibjpeg
、実際の場所はにありました/usr/lib/i386-linux-gnu/
。お世話になりました。私はこれらの投稿の答えに従いました:
Django ImageField "有効な画像をアップロードしてください。アップロードしたファイルは、画像ではないか、破損した画像でした。"
admin /経由でjpgファイルをDjangoアプリにアップロードできないのはなぜですか?
これで、インストールの最終出力は次のようになります。
PIL 1.1.7 SETUP SUMMARY
--------------------------------------------------------------------
version 1.1.7
platform linux2 2.7.3 (default, Apr 20 2012, 22:44:07)
[GCC 4.6.3]
--------------------------------------------------------------------
--- TKINTER support available
--- JPEG support available
--- ZLIB (PNG/ZIP) support available
--- FREETYPE2 support available
*** LITTLECMS support not available
--------------------------------------------------------------------
To add a missing option, make sure you have the required
library, and set the corresponding ROOT variable in the
setup.py script.
To check the build, run the selftest.py script.
changing mode of build/scripts-2.7/pilfile.py from 644 to 755
changing mode of build/scripts-2.7/pilfont.py from 644 to 755
changing mode of build/scripts-2.7/pilconvert.py from 644 to 755
changing mode of build/scripts-2.7/pilprint.py from 644 to 755
changing mode of build/scripts-2.7/pildriver.py from 644 to 755
changing mode of /usr/local/bin/pilfile.py to 755
changing mode of /usr/local/bin/pilfont.py to 755
changing mode of /usr/local/bin/pilconvert.py to 755
changing mode of /usr/local/bin/pilprint.py to 755
changing mode of /usr/local/bin/pildriver.py to 755
Successfully installed PIL
ただし、DjangoではBMPファイル以外はアップロードできません。これはこのプロジェクトでは受け入れられません。2番目のリンクのユーザーとは異なり、私はApacheを使用していないので、私の問題はおそらく関連していません。私の疑いは、Djangoがまだ古いインストールのPILを使用していることです。問題は、どこから入手できるのかわからないことです。のファイルは~/.virtualenvs/project/local/lib/python2.7/site-packages
私には最新のようです。何か案は?
pillow
編集1:この投稿のように、管理者からログアウトして再度ログインし、インストールしようとしたことにも注意してください: Django経由でJPEG画像をアップロードするとエラーが表示されます