如何解决在 Django 中部署 Heroku 时,如何在本地存储环境变量并且不必更改代码
我有一个 Django 项目,我一直在离线工作,现在我将它托管在 Heroku 上,它在 Heroku 上运行良好,但在我的本地机器上失败并出现此错误。
File "/usr/lib/python3.9/os.py",line 679,in __getitem__
raise KeyError(key) from None
KeyError: 'DEBUG'
我认为这是因为我使用了这样的环境变量。
from boto.s3.connection import S3Connection
import os
DEBUG = S3Connection(os.environ['DEBUG'],os.environ['DEBUG'])
我的根目录(项目文件夹)中还有一个 .env
文件,其中包含这样的环境变量。
export JWT_SECRET_KEY = "dfge..."
export DEBUG = 1
在我的本地机器上存储环境变量的正确方法是什么?
解决方法
我将本地文件 secret.py
添加到 .gitignore
,其中包含所有键和需要的 env 值:
#secret.py
DEBUG = 1
然后在 settings.py
中:
# settings.py
try:
import secret
DEBUG = secret.DEBUG
except ModuleNotFoundError:
DEBUG = S3Connection(os.environ['DEBUG'],os.environ['DEBUG'])
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。