Автоматически поднимать ImproperlyConfigure, если переменная окружения отсутствует
У меня есть следующий код в одном из моих views.py:
tl_key = os.getenv("TRANSLOADIT_KEY")
tl_secret = os.getenv("TRANSLOADIT_SECRET")
if not tl_key:
logger.critical("TRANSLOADIT_KEY not set")
raise ImproperlyConfigured
if not tl_secret:
logger.critical("TRANSLOADIT_SECRET not set")
raise ImproperlyConfigured
Я знаю, что если Django не находит SECRET_KEY
или DEBUG
переменную окружения, то он вызовет ImproperlyConfigured
исключение. Есть ли способ указать, какие переменные окружения необходимы, чтобы упомянутое исключение возникало автоматически?
Вы можете добавить еще одну переменную окружения, определяющую ваши потребности, что-то вроде APP_ENVIRONMENT=dev|prod
, таким образом, вы сможете проверить эту переменную и вызвать ошибку ImproperlyConfigured или присвоить значение по умолчанию в вашем коде
Вы можете создать список элементов, которые необходимы в env файле и вставить его в ваш основной settings.py или dev settings
required_env_items=["TRANSLOADIT_KEY","TRANSLOADIT_SECRET"]
for item in required_env_items:
if not os.getenv(item):
raise ImproperlyConfigured("please add {} in env file".format(item))