я следующая структура файлов конфигурации:импорта Python Lib аналог «импорт * от XXX»
app
\config
\development
\__init__.py
\settings.py
\app_config.py
\production
\__init__.py
\settings.py
\app_config.py
\testingpy
\settings.py
\app_config.py
\settinngs.py
\app_config.py
На самом деле app.config.settings
просто проверить переменную окружения RUNTIME_ENV
(который может быть development|production|testing
, что эквивалентно одной из вложенных папок config
«s) и загрузите соответствующие настройки.
Я знаю только об импорте с importlib
которые возвращают мне модуль в качестве локальной переменной, и я вынужден написать что-то вроде этого:
SCALA_URL = imported_settings.SCALA_URL
REDIS_URL = imported_settings.REDIS_URL
SOME_SETTINGS_VAR = imported_settings.REDIS_URL
.... tons of duplicated strings here, i.e. variables names are the same ...
Есть ли способ сделать что-то похожее на выражение питона: from config.${RUNTIME_ENV}.settings import *
?