Python 缺少Heroku/app/bin目录
向我的django应用程序提交了一个小的代码更改,并部署到heroku。应用程序现在在每个响应上抛出H10(应用程序崩溃)错误。当我查看日志时,我看到Python 缺少Heroku/app/bin目录,python,django,heroku,Python,Django,Heroku,向我的django应用程序提交了一个小的代码更改,并部署到heroku。应用程序现在在每个响应上抛出H10(应用程序崩溃)错误。当我查看日志时,我看到 [web.1]: Traceback (most recent call last): [web.1]: File "nightlife2/manage.py", line 2, in <module> [web.1]: from django.core.management import execute_manager
[web.1]: Traceback (most recent call last):
[web.1]: File "nightlife2/manage.py", line 2, in <module>
[web.1]: from django.core.management import execute_manager
[web.1]: ImportError: No module named django.core.management
[web.1]: bash: bin/gunicorn_django: No such file or directory
[web.1]:回溯(最近一次呼叫最后一次):
[web.1]:文件“nightlife2/manage.py”,第2行,在
[web.1]:来自django.core.management导入执行\u管理器
[web.1]:ImportError:没有名为django.core.management的模块
[web.1]:bash:bin/gunicorn\u django:没有这样的文件或目录
…我知道这意味着django不在蟒蛇身上。我查看了heroku配置上的路径,上面写着bin:/usr/local/bin:/usr/bin:/bin
。但是当我运行bash时,我注意到整个bin
目录现在都不见了。我在heroku上部署的其他应用程序仍然可以推送到并且仍然在那里有bin
目录(我相信较新的应用程序不再有bin目录,它现在在.heroku/venv/bin中。那里的详细信息不是100%确定)
有人遇到过这种情况吗?我可以将路径更改为.heroku/venv/bin
,但随后我得到了一个关于sql的错误,我不知道这离根本问题是近还是远。任何东西都将非常感谢,因为这是生产服务器,目前正在使用软管
编辑:更改路径时出错:django.core.exceptions.impropertlyconfigured:加载pysqlite2或sqlite3模块时出错(按该顺序尝试):没有名为_sqlite3的模块
。数据库是postgress,所以我不确定这是从哪里来的我解决了这个问题。这是多种因素的结合。我会在这里记录下来,希望能帮别人省去我刚刚经历的头痛
我们的数据库刚刚更新到新的Heroku Postgres开发计划。(不确定这是否相关)。这是数据库更新后第一次推送代码
不久前,我还记得听说设置注入被弃用。由于天真,我们什么也没做,也没有看到任何变化,所以也没有跟进。他们决定在今天生效,并中断了与我们postgres数据库的链接。我仍然不确定为什么
bin
目录现在不见了,但似乎应用程序现在正在使用新的.heroku/venv/bin
。要解决所有这些问题,我必须更改settings.py,以便为数据库使用新的postgres声明。我在OP中正确地指出,heroku config
中的PATH变量需要更新,以指向.heroku/venv/bin
目录。然后我不得不更新Procfile,因为它抱怨没有找到bin/gunicorn\u django
。更新完所有内容后,按代码解决了问题我解决了问题。这是多种因素的结合。我会在这里记录下来,希望能帮别人省去我刚刚经历的头痛
我们的数据库刚刚更新到新的Heroku Postgres开发计划。(不确定这是否相关)。这是数据库更新后第一次推送代码
不久前,我还记得听说设置注入被弃用。由于天真,我们什么也没做,也没有看到任何变化,所以也没有跟进。他们决定在今天生效,并中断了与我们postgres数据库的链接。我仍然不确定为什么bin
目录现在不见了,但似乎应用程序现在正在使用新的.heroku/venv/bin
。要解决所有这些问题,我必须更改settings.py,以便为数据库使用新的postgres声明。我在OP中正确地指出,heroku config
中的PATH变量需要更新,以指向.heroku/venv/bin
目录。然后我不得不更新Procfile,因为它抱怨没有找到bin/gunicorn\u django
。一旦一切都更新了,推动代码解决了问题