python - Django 测试套件声称 PIL 未安装,即使已安装

标签 python django osx-mavericks

我正在与一个团队合作开发 Django 项目。我们在 Python 3 上运行它,并安装了 Pillow 以在 Python3 中使用 PIL。

我们项目中的一个模型使用 ImageField。

运行 Django 的测试套件时出现错误,告诉我 PIL 尚未安装,尽管它已安装。但这仅特定于我的机器/操作系统。

图像在部署的站点上工作正常,并且没有错误。我的队友(都运行 Windows)可以正常运行测试套件,并且不会出现我在尝试运行测试套件时遇到的“PIL 未安装”错误。

我可能做错了什么导致Django在运行manage.py测试时找不到Pillow包?

注意事项:

  • 我运行的是 OSX Mavericks (10.9)。
  • 我已经修复了 Mavericks 引入的 python3 错误。
  • Pillow 和 Pillow-PIL(最新版本)通过终端中的 pip3 install 命令安装到 python3 中。
  • 我正在运行 Django 1.5.4

这是我在尝试运行“python3 manage.py test MySite”时得到的具体反馈:

Creating test database for alias 'default'... CommandError: One or more models did not validate: ToolShare.tool: "picture": To use ImageFields, you need to install the Python Imaging Library. Get it at http://www.pythonware.com/products/pil/ .

对此的任何帮助将不胜感激!

编辑:我解决了我的问题。对于将来可能遇到相同问题的任何人,请按照此答案进行操作,就像我所做的那样,测试套件按预期运行:

https://stackoverflow.com/a/18223272/2419492

最佳答案

我解决了我的问题。对于将来可能遇到相同问题的任何人,请按照此答案进行操作,就像我所做的那样,测试套件按预期运行:

https://stackoverflow.com/a/18223272/2419492

关于python - Django 测试套件声称 PIL 未安装,即使已安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19869624/

相关文章:

python - 将字符串字符替换为彼此包含的字符

javascript - 在Python中匹配Javascript转义表单数据

python - 上传文件的 Django 自定义管理方法

Django tastypie 将 DecimalField 序列化为 json 字符串而不是数字

macos - Mavericks 和 NSStatusItem 的具有多个监视器的自定义 View

java - OS X Mavericks 中的 Aptana Studio 3 菜单栏

macos - brew install hbase 尝试安装 hadoop 虽然已经存在

python - Fresh Django Server,根据官方文档将 Zinnia 添加到项目中,但不起作用。里面很多细节

python - 我的代码抛出有关 NoneType 的错误,但应该定义它

mysql - Django ManyToManyField 无法创建 "through"表