12

私はPillowをインストールしましたが、私のDjangoサイトでこれを使用して管理ページからの画像のアップロードを許可します。前のquestionを参照してください。Pillow with Djangoの使い方

DjangoがPillowを認識し、ImageFieldが画像を適切にアップロードできるようにするために、設定ファイルやその他の場所にどのような変更を加える必要がありますか?

+0

なぜ私の上司はPILを使わないのでPILを使用していますか?PIL – catherine

+0

PIPをピップすると気付いた通り、設定を変更する必要はありませんファイルまたは他の場所。ここで画像をアップロードすることができます – catherine

+0

@catherine私はpipを使ってインストールしませんでした。上記のリンク – zpesk

答えて

0

PILの代わりにsettings.pyを変更したり、PILOWを使用する必要はありません。そのドロップイン置換え、あなたのPYTHONPATHで利用可能にする必要があります。

+0

settings.pyファイルがPIL用に設定されていません...どうすればいいですか? – zpesk

+0

設定をまったく変更する必要はありません。それは単にPYTHONPATHで利用可能でなければなりません。私はそれを反映するために私の答えを編集します。 – Brandon

+0

PYTHONPATHでそれが利用できることを確認するにはどうすればよいですか? – zpesk

14

問題は、輸入がPillowとPILで少し異なって動作することです。相違点は、ここで説明されている:http://pillow.readthedocs.org/en/latest/porting-pil-to-pillow.html

Djangoは今もこのチケット(https://code.djangoproject.com/ticket/19934)を介して、PILの上に枕を好むように変更されました

これは新しいコミットDjangoの1.6a1リリースに存在しているので、新しい動作は意志Django 1.6リリースに含まれている必要があります。しかし今のところ、互換性レイヤーを提供するPillow-PILと呼ばれる新しいライブラリ(2013年5月20日に最初にリリースされた)を使用することができます。これはピップで簡単にインストールできます:pip install --pre Pillow-PIL

+0

私はDjango 1.5.1でビルドアウトを使用しています。これは魅力的なように機能しました。今では私のすべての画像がどれほど大きなものかを知っています。ありがとうございます – Dan

+0

私はDjango 1.5を使用するDjangoチュートリアルでTangoをやろうとしています。私はvirtualenvwrapperを使用しています。私はピッとピルをインストールしました。ピップフリーズショー:Django == 1.5.5ピロー== 2.4.0サウス== 0.8.4 wsgiref == 0.1.2。しかし、第8章では次のエラーが出ます:(tangowithdjango)〜/ dev_django_projects/tangowithdjango $ ./manage.py syncdb * CommandError:1つ以上のモデルが検証されませんでした:rango.userprofile: "picture":ImageFieldを使用するには、あなたはPython Imaging Libraryをインストールする必要があります... – 7stud

+0

@ 7stud Django 1.5.5を使用している場合は、Pillow-PIL still(pip install Pillow-PIL)をインストールする必要があります。この依存関係を解消したい場合は、Django 1.6.xまたは今後の1.7リリースにアップグレードしてください。 –

2

図面を作成するPythonモジュールでは、次のように記述します。

import PIL.Image as Image 

と同様にImageDrawとImageFontです。これらは、通常のPIPインストール後に必要とされた唯一の変更です。あなたが設定か何かを変更する必要はありませんその後

from PIL import Image 

:あなたはDjangoのプロジェクトでそれをインポートする必要があり

pip install pillow 

2

まず、と枕(好ましくはアクティブにvirtualenvのを持つ)をインストールしますelse。すべてのモジュールが動作するはずです。