Django SystemCheckError 说 Pillow 未安装,但 Pillow 已安装
Posted
技术标签:
【中文标题】Django SystemCheckError 说 Pillow 未安装,但 Pillow 已安装【英文标题】:Django SystemCheckError Says Pillow Not Installed, but Pillow is Installed 【发布时间】:2015-12-06 04:02:21 【问题描述】:当我运行python manage.py runserver
时,一切开始正常,但随后我收到SystemCheckError
说明Pillow 未安装;但是,这台机器上肯定安装了 Pillow。
这是我收到的错误:
正在执行系统检查...
由 Traceback 启动的线程中未处理的异常(最后一次调用):文件 "/usr/local/lib/python2.7/dist-packages/django/utils/autoreload.py", 第 225 行,在包装器中 fn(*args, **kwargs) 文件“/usr/local/lib/python2.7/dist-packages/django/core/management/commands/runserver.py”, 第 110 行,inner_run self.validate(display_num_errors=True) 文件 "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", 第 468 行,有效 返回 self.check(app_configs=app_configs, display_num_errors=display_num_errors) 文件 “/usr/local/lib/python2.7/dist-packages/django/core/management/base.py”, 第 527 行,检查中 引发 SystemCheckError(msg) django.core.management.base.SystemCheckError: SystemCheckError: System 检查发现了一些问题:
错误:recipes.Recipes.primary_image:(fields.E210)无法使用 ImageField 因为没有安装 Pillow。 提示:在https://pypi.python.org/pypi/Pillow 获取 Pillow 或运行命令“pip install Pillow”。 recipes.Recipes.thumbnail_image: (fields.E210) 由于未安装 Pillow,无法使用 ImageField。 提示:通过https://pypi.python.org/pypi/Pillow 获取 Pillow 或运行命令“pip install Pillow”。
我在 Ubuntu 机器上运行它。有什么想法吗?
【问题讨论】:
你在使用 virtualenv 吗? 点冻结...它出现了吗? 是的,pip freeze 显示 Pillow==2.9.0。我没有使用 virtualenv。我已使用 PuTTY 从 Windows 连接到 EC2 Linux 实例。 【参考方案1】:在这里查看我的答案:https://***.com/a/61063514/2254794
短版:枕头在运行时需要libjpeg和libzlib; django 将报告任何import PIL
失败,如上所示。
【讨论】:
【参考方案2】:在您的代码中,如果您曾在任何地方尝试使用诸如 import pillow
或 from pillow import ...
之类的导入语句,请将这些语句更改为:
from PIL import ...
或
import PIL
PIL
即不再维护 Python 映像库,而是使用 Pillow
。为了保持向后兼容性,PIL
模块名称用于导入。
【讨论】:
我的代码中没有“导入枕头”或“从枕头导入...”。 检查PIL
是否也与pillow
一起安装。如果是,则卸载PIL
。
PIL 未安装。
转到 Django shell 并尝试命令 from PIL import Image
。检查是否正常工作
当我尝试您建议的命令时,会出现以下错误: >>> from PIL import Image Traceback (most recent call last): File "以上是关于Django SystemCheckError 说 Pillow 未安装,但 Pillow 已安装的主要内容,如果未能解决你的问题,请参考以下文章
Django-Rest-Framework JWT 单元测试说“未提供身份验证”
Django - 迁移命令说该表在执行第二次 makemigrations 后存在
Google Authenticator (Android) + Django 即使在时间同步之后也说无效令牌