1

我在将我的 Django 应用程序推送到 Heroku 时遇到问题。安装 PIL 似乎有错误。传统上,我在 Windows 上遇到了 PIL b/c 问题,因此使用 pip install 或 easy_install 不起作用,因为它找不到“vcvarsall.bat”

所以作为一个快速的解决方案,我去了这个站点并运行了 PIL 的 .exe 版本来安装。我在将 PIL 放到我的虚拟环境中时遇到问题,所以在创建虚拟环境时,我使用它

virtualenv --system-site-packages venv

现在我正在使用

git push heroku master

我要拿回这个

Downloading/unpacking PIL==1.1.7 (from -r requirements.txt)
Could not find any downloads that satisfy the requirement PIL==1.1.7 (line 2))
...
Heroku push rejected, failed to compile Python/Django app
! [remote rejected] m aster -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com...'

我怎样才能通过 PIL?

4

1 回答 1

4

我记得在 pip 查找 PIL 时遇到了这个问题。尝试在 requirements.txt 中使用这一行而不是 PIL=1.1.7

http://effbot.org/media/downloads/Imaging-1.1.7.ta​​r.gz

此外,您始终可以从 requirements.txt 中删除任何模块,并将其替换为 Django 根目录中的模块代码副本。

例如,使用 PIL 的东西,您可以使用该链接下载代码,解压缩,然后将生成的 Imaging-1.1.7 文件夹中的 PIL 粘贴到您的 Django 项目根目录中。本来也一样。

通常,您希望尽可能避免这种情况,因为它会增加代码部署的大小,但您可以做到。它将帮助您解决这些问题,因此您至少现在可以继续工作。

包含代码而不是仅仅使用 requirements.txt 实际上可能更可取的一种情况是,当您使用文档不足的库或模块时,您希望立即快速访问源代码在你的编辑器里面。可能不会在生产服务器上执行此操作,但对于开发人员来说可能非常方便。

于 2012-11-16T04:14:00.947 回答