首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安装了django-heroku和psycopg2,但显示了“导入django_heroku ModuleNotFoundError:没有名为‘django_heroku’的模块”

安装了django-heroku和psycopg2,但显示了“导入django_heroku ModuleNotFoundError:没有名为‘django_heroku’的模块”
EN

Stack Overflow用户
提问于 2020-06-04 11:00:58
回答 2查看 2.4K关注 0票数 0

我首先安装了psycopg2,然后安装了django_heroku。

setting.py

代码语言:javascript
复制
import django_heroku
import os
---
---
django_heroku.settings(locals())

以下是安装在虚拟环境中的我的需求。

requirements.txt

代码语言:javascript
复制
asgiref==3.2.7
certifi==2020.4.5.1
chardet==3.0.4
dj-database-url==0.5.0
Django==3.0.5
django-contrib-comments==1.9.2
django-heroku==0.3.1
gunicorn==20.0.4
idna==2.9
psycopg2==2.7.5
pytz==2020.1
requests==2.23.0
six==1.15.0
sqlparse==0.3.1
urllib3==1.25.9
whitenoise==5.1.0

在推开heroku大师之后,它显示了。

活动日志

代码语言:javascript
复制
      File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
         File "<frozen importlib._bootstrap>", line 983, in _find_and_load
         File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
         File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
         File "<frozen importlib._bootstrap_external>", line 728, in exec_module
         File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
         File "/tmp/build_e4e9cada1e303d2ab0fdd618bffc8af4/covid19/covid19/settings.py", line 13, in <module>
           import django_heroku
       ModuleNotFoundError: No module named 'django_heroku'
 !     Error while running '$ python covid19/manage.py collectstatic --noinput'.
       See traceback above for details.
       You may need to update application code to resolve this error.
       Or, you can disable collectstatic for this application:
          $ heroku config:set DISABLE_COLLECTSTATIC=1
       https://devcenter.heroku.com/articles/django-assets
 !     Push rejected, failed to compile Python app.
 !     Push failed

还有一个问题是,"ModuleNotFoundError:没有名为‘covid19.wsgi’的模块“。但我在我的过程文件里用过了。

Procfile

代码语言:javascript
复制
web: gunicorn covid19.wsgi 
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-06-11 05:36:48

在了解了根目录之后,我解决了这个问题。我的项目不在根目录中。

当我通过命令创建项目时

代码语言:javascript
复制
django-admin startproject projectname

它创建两个文件夹项目名->项目名

但是如果我们命令这样做。

代码语言:javascript
复制
django-admin startproject projectname .

它只创建一个文件夹文件夹项目名,其中manage.py停留。

这是根目录。因此,我复制了所有的应用程序和其他文件和文件夹,并粘贴到根文件夹,然后它工作。

票数 0
EN

Stack Overflow用户

发布于 2021-07-06 17:10:42

尝试将procfile更改为:web: gunicorn --chdir covid19 covid19.wsgi

如果根目录与所提供的直接路径不匹配,--chdir将根据列出的目录告诉它匹配。因此,基本上,如果您的wsgi.py位于根目录中,您的原始procfile就能工作,但是如果您的根目录位于父文件夹中,它将不会识别您的wsgi,因为它位于与根目录不同的位置(最常见的是根目录比预期的级别更高,建议的procfile将解决这个问题)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62193007

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档