2

シンプルなコードを使おうとすると

        time_created = time.time()
        tempPath = 'user_image/'+ str(request.user.id)+'/'+str(time_created)+'/'
        print tempPath
        path = default_storage.save(tempPath+'original.jpg', ContentFile(content_image.read()))
        tmp_file = os.path.join(settings.MEDIA_ROOT, path) #this line gives error
        image = open(tmp_file) 

それは私にエラーを与えます:デコーダーjpegは利用できません

これは私がそれを解決するためにしたことです: http://www.answermysearches.com/fixing-pil-ioerror-decoder-jpeg-not-available/320/

私はpython2.7とImaging-1.1.7を使用しています

上記のリンクをたどった後、端末で python selftest.py を実行すると、次の出力が得られます

python selftest.py
--------------------------------------------------------------------
PIL 1.1.7 TEST SUMMARY 
--------------------------------------------------------------------
Python modules loaded from ./PIL
Binary modules loaded from ./PIL
--------------------------------------------------------------------
--- PIL CORE support ok
*** TKINTER support not installed
--- JPEG support ok
--- ZLIB (PNG/ZIP) support ok
--- FREETYPE2 support ok
*** LITTLECMS support not installed
--------------------------------------------------------------------
Running selftest:
--- 57 tests passed.

しかし、ブラウザからアプリケーションにアクセスすると、デコーダ jpeg が利用できないというメッセージが表示されます

注:Apacheサーバーを再起動しました(必要かどうかはわかりません)。Apache で構成を変更する必要がありますか?

stackoverflow で検索したところ、同様の質問が見つかりましたが、Apache を扱っているものはありませんでした。

4

1 に答える 1

0

同じエラーが発生しました。理由は、サーバー上で実行されている他のサイトにありました。Pythonパスに古いPILがありました。そのため、Python パスをクリーンアップするか、古い PIL を再インストールすると役立つ可能性があります。

于 2012-06-20T09:05:47.567 に答える