尝试安装 python 要求后,Heroku Django 应用程序部署失败

时间:2021-01-22 02:21:59

标签: python django heroku pip

我使用 pip install django-user-visit 安装了 django-user-visit,在我的本地环境中对其进行了测试,一切似乎都正常,但是当我尝试使用 Heroku 将我的应用部署到生产环境时,我得到以下错误:

remote:        Collecting django-cors-headers==3.6.0
remote:          Downloading django_cors_headers-3.6.0-py3-none-any.whl (12 kB)
remote:        ERROR: Could not find a version that satisfies the requirement django-user-visit==0.4.1 (from -r /tmp/build_940d12d0/requirements.txt (line 4)) (from versions: none)
remote:        ERROR: _No matching distribution_ found for django-user-visit==0.4.1 (from -r /tmp/build_940d12d0/requirements.txt (line 4))
remote:  !     Push rejected, failed to compile Python app.
remote: 
remote:  !     Push failed

有谁知道为什么 Heroku 找不到这个包,我能不能解决这个问题?

通过运行我的 requirements.txt 文件中指示的库来安装我的软件包:

asgiref==3.3.1
Django==3.1.5
django-cors-headers==3.6.0
django-user-visit==0.4.1
djangorestframework==3.12.2
gunicorn==20.0.4
psycopg2==2.8.6
pytz==2020.5
sqlparse==0.4.1
ua-parser==0.10.0
user-agents==2.2.0
whitenoise==5.2.0

到目前为止我所尝试的是将版本更改为 0.4 并且根本不指定版本

1 个答案:

答案 0 :(得分:2)

来自文档:https://devcenter.heroku.com/articles/python-runtimes

如果您运行的 Python 应用程序需要不同的受支持运行时,或者如果您只是想锁定您的项目以防止补丁更新,直到您准备好升级,您可以指定要用于您的应用程序的运行时。< /p>

要指定 Python 运行时,请将 runtime.txt 文件添加到应用的根目录,声明要使用的确切版本号。

之后

pip freeze > requirements.txt