首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Django部署到Heroku时: ModuleNotFoundError:没有名为'env‘的模块

将Django部署到Heroku时: ModuleNotFoundError:没有名为'env‘的模块
EN

Stack Overflow用户
提问于 2020-12-16 10:02:30
回答 2查看 731关注 0票数 0

当将Django部署到Heroku时,我得到一个ModuleNotFoundError:没有名为'env‘错误的模块。

有人知道它为什么要找那个模块吗?

这是我的requirements.txt:

代码语言:javascript
复制
asgiref==3.2.3
certifi==2020.12.5
chardet==3.0.4
dj-database-url==0.5.0
Django==1.11
django-forms-bootstrap==3.1.0
gunicorn==20.0.4
idna==2.10
Pillow==5.3.0
psycopg2==2.8.6
pytz==2020.4
requests==2.25.0
sqlparse==0.4.1
stripe==2.55.1
urllib3==1.26.2
whitenoise==5.2.0

以下是Heroku的构建日志:

代码语言:javascript
复制
File "/app/.heroku/python/lib/python3.6/site-packages/django/core/management/__init__.py", line 363, in execute_from_command_line
           utility.execute()
         File "/app/.heroku/python/lib/python3.6/site-packages/django/core/management/__init__.py", line 307, in execute
           settings.INSTALLED_APPS
         File "/app/.heroku/python/lib/python3.6/site-packages/django/conf/__init__.py", line 56, in __getattr__
           self._setup(name)
         File "/app/.heroku/python/lib/python3.6/site-packages/django/conf/__init__.py", line 41, in _setup
           self._wrapped = Settings(settings_module)
         File "/app/.heroku/python/lib/python3.6/site-packages/django/conf/__init__.py", line 110, in __init__
           mod = importlib.import_module(self.SETTINGS_MODULE)
         File "/app/.heroku/python/lib/python3.6/importlib/__init__.py", line 126, in import_module
           return _bootstrap._gcd_import(name[level:], package, level)
         File "<frozen importlib._bootstrap>", line 994, in _gcd_import
         File "<frozen importlib._bootstrap>", line 971, in _find_and_load
         File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
         File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
         File "<frozen importlib._bootstrap_external>", line 678, in exec_module
         File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
         File "/tmp/build_ae2377c8_/issuetracker/settings.py", line 15, in <module>
           import env
       ModuleNotFoundError: No module named 'env'
 !     Error while running '$ python 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
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-12-16 11:05:26

我现在还记得如何解决这个问题。我需要添加到我的设置文件:

代码语言:javascript
复制
    if os.path.exists('env.py'):
        import env

Heroku又开始工作了。

谢谢你的回答。

票数 0
EN

Stack Overflow用户

发布于 2020-12-16 10:39:28

import env文件中移除settings.py代码并运行以下代码

代码语言:javascript
复制
heroku config:set DISABLE_COLLECTSTATIC=1
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65321048

复制
相关文章

相似问题

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