收到错误 => 模块未发现错误:没有名为"django"的模块,当我尝试将我的 django 应用程序部署到 heroku 时



当我尝试将我的django应用程序部署到heroku时,部署将失败,并显示以下错误消息

Traceback (most recent call last):
File "manage.py", line 11, in main
from django.core.management import execute_from_command_line
ModuleNotFoundError: No module named 'django'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "manage.py", line 23, in <module>
main()
File "manage.py", line 13, in main
raise ImportError(
ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?

这是我的要求.txt

asgiref==3.3.4
dj-database-url==0.5.0
Django==3.2.3
django-cors-headers==3.7.0
django-on-heroku==1.1.2
djangorestframework==3.12.4
gunicorn==20.1.0
psycopg2-binary==2.8.6
python-dotenv==0.17.1
pytz==2021.1
sqlparse==0.4.1
whitenoise==5.2.0

我的Procfile

release: python3 manage.py migrate
web: gunicorn app_name.wsgi --log-file -

以及构建包(使用nodejs作为前端(

1. heroku/nodejs
2. heroku/python

我已经尝试从CLI和github存储库中部署该应用程序。两者都会导致相同的错误。

如果需要,我很乐意提供该项目的任何额外信息。

如何修复此错误,使我的应用程序能够成功部署?

更新

我将我的Procfile编辑为以下

web: gunicorn app_name.wsgi --log-file -

当我尝试使用这个Procfile进行部署时,我在我的heroku日志中得到了以下错误

app[web.1]: bash: gunicorn: command not found

Heroku似乎无法使用我在requirements.txt中列出的任何软件包。有人猜测为什么会发生这种情况吗?

已解决

我的项目中有一个Pipfile和一个requirements.txt。Heroku似乎默认读取Pipfile来查找依赖项。我只使用requirements.txt来列出我的依赖项,而我的Pipfile没有列出任何依赖项。

解决方案:删除了Pipfile,一切都很完美!

最新更新