web-dev-qa-db-fra.com

Comment utiliser un oreiller avec Django

J'ai installé Pillow et je souhaite maintenant l’utiliser sur mon site Django pour permettre le téléchargement d’images via ma page d’administrateur. Voir précédente question .

Quelles modifications dois-je apporter dans mon fichier de paramètres ou ailleurs pour que Django reconnaisse Pillow et permette à ImageField de télécharger correctement l'image?

12
zpesk

Le problème est que les importations fonctionnent maintenant légèrement différemment avec Pillow vs PIL. Les différences sont décrites ici: http://pillow.readthedocs.org/fr/latest/porting-pil-to-pillow.html

Django a également été modifié pour préférer Pillow à PIL, via ce ticket ( https://code.djangoproject.com/ticket/19934 )

Ce commit est présent dans la nouvelle version de Django 1.6a1, le nouveau comportement sera donc présent dans la version 1.6 de Django. Pour l'instant, cependant, il semble que vous puissiez utiliser une nouvelle bibliothèque (initialement publiée le 20 mai 2013) appelée Pillow-PIL, qui fournira un calque de compatibilité. Ceci peut être facilement installé avec pip via: pip install --pre Pillow-PIL

14
Joey Wilhelm

Dans un module Python qui fait un dessin, je mets simplement ce qui suit.

import PIL.Image as Image

et de même pour ImageDraw et ImageFont. Ce sont les seuls changements nécessaires après une installation de routine du programme PIP.

2
Mike O'Connor

Premièrement, installez un oreiller (ayant virtualenv activé de préférence) avec:

pip install pillow

Vous devez l'importer dans le projet Django:

from PIL import Image

Après cela, vous n'avez pas besoin de modifier les paramètres ni quoi que ce soit d'autre. Tous les modules devraient fonctionner.

2
Ria

Vous ne devriez pas avoir à modifier votre fichier settings.py ni à utiliser Pillow au lieu de PIL. C'est un remplacement immédiat, et il doit simplement être disponible sur votre PYTHONPATH.

0
Brandon