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 pillowfrom 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 "", line 1, in 文件“/usr/local/lib/python2.7/dist-packages/PIL/Image.py”,第 63 行,在 from PIL import _imaging as core ImportError: libopenjp2.so.7: cannot open shared object file : 没有这样的文件或目录

以上是关于Django SystemCheckError 说 Pillow 未安装,但 Pillow 已安装的主要内容,如果未能解决你的问题,请参考以下文章

这是字段集中的重复字段

Django-Rest-Framework JWT 单元测试说“未提供身份验证”

Django - 迁移命令说该表在执行第二次 makemigrations 后存在

Google Authenticator (Android) + Django 即使在时间同步之后也说无效令牌

django 包含标签 kwargs 错误说“函数需要 2 个参数”

Django说配置不正确:包含的URLconf中似乎没有任何模式