Как использовать Подушку с Django
Я установил Pillow и теперь хочу использовать его на моем сайте Django, чтобы разрешить загрузку изображений через мою страницу администратора. См. Предыдущий question.
Какие изменения необходимо внести в моем файле настроек или в другом месте, чтобы Django распознал подушку и разрешил ImageField правильно загружать изображение?
Ответы
Ответ 1
Проблема заключается в том, что импорт теперь работает несколько иначе с Pillow vs PIL. Различия описаны здесь: http://pillow.readthedocs.org/en/latest/porting-pil-to-pillow.html
Django также теперь изменен, чтобы предпочесть Pillow над PIL через этот билет (https://code.djangoproject.com/ticket/19934)
Эта фиксация присутствует в новой версии Django 1.6a1, поэтому новое поведение будет присутствовать в выпуске Django 1.6. На данный момент, похоже, вы можете использовать новую библиотеку (первоначально выпущенную 20 мая 2013 г.) под названием Pillow-PIL, которая обеспечит уровень совместимости. Это можно легко установить с помощью pip через: pip install --pre Pillow-PIL
Ответ 2
В модуле Python, который создает чертеж, я просто добавляю следующее.
import PIL.Image as Image
а также для ImageDraw и ImageFont. Это были единственные изменения, которые были необходимы после обычной установки PIP.
Ответ 3
Во-первых, установите подушку (с активированной функцией virtualenv):
pip install pillow
Вы должны импортировать его в проект Django:
from PIL import Image
После этого вам не нужно менять настройки или что-то еще. Все модули должны работать.
Ответ 4
Вам не нужно вносить какие-либо изменения в свои настройки .py или иначе использовать Pillow вместо PIL. Его замена на замену и просто должна быть доступна на вашем PYTHONPATH.