[英]How do you use python-decouple to load a .env file outside the expected paths?
[英]How to use different .env files with python-decouple
我正在开发一个 django 项目,我需要使用 Docker 运行它。 在这个项目中,我有多个.env文件: .env.dev 、 .env.prod 、 .env.staging 。 有没有正确的方法来使用包 python-decouple 管理所有这些文件? 我一直在寻找一种解决方法来应对这一挑战,但没有找到任何类型的答案,甚至在官方文档中也没有。
我可以使用类似的东西:
# dont works that way, it's just a dummie example
python manage.py runserver --env-file=.env.prod
或者有什么方法可以设置或覆盖我需要使用的文件?
不是导入 decouple.config 并执行通常的config('SOME_ENV_VAR')
, config('SOME_ENV_VAR')
使用RepositoryEnv('/path/to/.env.prod')
创建一个新的decouple.Config
对象。
from decouple import Config, RepositoryEnv
DOTENV_FILE = '/home/user/my-project/.env.prod'
env_config = Config(RepositoryEnv(DOTENV_FILE))
# use the Config().get() method as you normally would since
# decouple.config uses that internally.
# i.e. config('SECRET_KEY') = env_config.get('SECRET_KEY')
SECRET_KEY = env_config.get('SECRET_KEY')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.