我安装了Pillow,现在想在我的 Django 站点上使用它来允许通过我的管理页面上传图像。请参阅上一个问题。
我需要在我的设置文件或其他地方进行哪些更改才能让 Django 识别 Pillow 并允许 ImageField 正确上传图像?
问题是导入现在与 Pillow 和 PIL 的工作方式略有不同。此处描述了差异:http: //pillow.readthedocs.org/en/latest/porting-pil-to-pillow.html
通过这张票( https://code.djangoproject.com/ticket/19934),Django现在也已更改为更喜欢 Pillow 而不是 PIL
此提交存在于新的 Django 1.6a1 版本中,因此新行为将存在于 Django 1.6 版本中。然而,目前看来,您可以使用一个名为 Pillow-PIL 的新库(最初于 2013 年 5 月 20 日发布),它将提供一个兼容层。这可以通过 pip 轻松安装:pip install --pre Pillow-PIL
首先,安装枕头(最好激活 virtualenv):
pip install pillow
你应该在 Django 项目中导入它:
from PIL import Image
之后,您无需更改设置或其他任何内容。所有模块都应该工作。
在绘制绘图的 Python 模块中,我简单地输入以下内容。
import PIL.Image as Image
ImageDraw 和 ImageFont 也是如此。这些是常规 PIP 安装后唯一需要的更改。
您不必对 settings.py 进行任何更改或以其他方式使用 Pillow 而不是 PIL。它是一个替代品,只需在您的 PYTHONPATH 上可用。