Как вы используете python-decouple для загрузки.env-файл вне ожидаемых путей?
я вынужден держать мою .env
файл в нестандартном пути вне корня моего проекта (в отдельном каталоге вообще).
предположим, у меня есть проект Django в /var/projects/my_project
, хотя у меня есть на /opt/envs/my-project/.env
где мой SECRET_KEY
хранится. В моем settings.py
файл, я хотел бы явно использовать .env
файл по этому пути, чтобы я все еще мог это сделать:
from decouple import config
secret_key = config('SECRET_KEY')
1 ответов
я понял.
вместо импорта decouple.config
и делать обычные config('FOOBAR')
создать новый decouple.Config
объект с помощью RepositoryEnv('/path/to/env-file')
.
from decouple import Config, RepositoryEnv
DOTENV_FILE = '/opt/envs/my-project/.env'
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')
надеюсь, это кому-то поможет.