EJIO.utils.config package¶
Submodules¶
EJIO.utils.config.err module¶
- exception EJIO.utils.config.err.RequirementsError(message: str)[исходный код]¶
Базовые классы:
UtilsBaseErrorИсключение, связанное с отсутствием требуемых параметров приложения.
EJIO.utils.config.inject module¶
- EJIO.utils.config.inject.inject_to_builtins(mapping: dict[str, Any], /) None[исходный код]¶
- EJIO.utils.config.inject.inject_to_builtins(name: str, attribute: Any, /) None
Универсальная функция для инъекции атрибутов во встроенное пространство имен builtins.
- Параметры:
first – Словарь с объектами или ключ для регистрации.
second – Объект для регистрации в случае, если первый аргумент - ключ.
- Исключение:
TypeError – Если первый аргумент не словарь и не строка.
EJIO.utils.config.validate module¶
- EJIO.utils.config.validate.isset(context: Mapping[str, Any] | ModuleType, key: str) bool[исходный код]¶
Проверяет, существует ли переменная в переданном контексте и что её значение не равно None.
Пример:
- if not isset(globals(), «DATABASE_URL»):
print(«Внимание: DATABASE_URL не настроена!»)
context = os.environ if isset(context, «PORT»):
print(f»Приложение будет запущено на порту {context[„PORT“]}»)
- Параметры:
context – Словарь или объект Mapping (например, os.environ или locals()) или модуль.
key – Имя проверяемой переменной (ключ).
- Результат:
True, если ключ присутствует и значение не None, иначе False.
- EJIO.utils.config.validate.require(context: Mapping[str, R] | ModuleType, key: str, error_message: str | None = None) R[исходный код]¶
Проверяет наличие переменной в контексте. Если переменная отсутствует или равна None, генерирует исключение RequirementsError.
Пример:
- try:
api_token = require(globals(), «API_KEY», «Критическая ошибка: Без API_KEY приложение не запустится!»)
- except RequirementsError as e:
print(f»Ошибка инициализации: {e}»)
context = os.environ try:
secret_key = require(context, «OS_SECRET_KEY»)
- except RequirementsError as e:
print(f»Старт заблокирован: {e}»)
- Параметры:
context – Словарь или объект Mapping (например, os.environ или locals()) или модуль.
key – Имя обязательной переменной.
error_message – Кастомное сообщение об ошибке.
- Результат:
Значение переменной, если проверка успешна.
- Исключение:
RequirementsError – Если переменная отсутствует или равна None.
Module contents¶
- EJIO.utils.config.inject_to_builtins(mapping: dict[str, Any], /) None[исходный код]¶
- EJIO.utils.config.inject_to_builtins(name: str, attribute: Any, /) None
Универсальная функция для инъекции атрибутов во встроенное пространство имен builtins.
- Параметры:
first – Словарь с объектами или ключ для регистрации.
second – Объект для регистрации в случае, если первый аргумент - ключ.
- Исключение:
TypeError – Если первый аргумент не словарь и не строка.
- EJIO.utils.config.isset(context: Mapping[str, Any] | ModuleType, key: str) bool[исходный код]¶
Проверяет, существует ли переменная в переданном контексте и что её значение не равно None.
Пример:
- if not isset(globals(), «DATABASE_URL»):
print(«Внимание: DATABASE_URL не настроена!»)
context = os.environ if isset(context, «PORT»):
print(f»Приложение будет запущено на порту {context[„PORT“]}»)
- Параметры:
context – Словарь или объект Mapping (например, os.environ или locals()) или модуль.
key – Имя проверяемой переменной (ключ).
- Результат:
True, если ключ присутствует и значение не None, иначе False.
- EJIO.utils.config.require(context: Mapping[str, R] | ModuleType, key: str, error_message: str | None = None) R[исходный код]¶
Проверяет наличие переменной в контексте. Если переменная отсутствует или равна None, генерирует исключение RequirementsError.
Пример:
- try:
api_token = require(globals(), «API_KEY», «Критическая ошибка: Без API_KEY приложение не запустится!»)
- except RequirementsError as e:
print(f»Ошибка инициализации: {e}»)
context = os.environ try:
secret_key = require(context, «OS_SECRET_KEY»)
- except RequirementsError as e:
print(f»Старт заблокирован: {e}»)
- Параметры:
context – Словарь или объект Mapping (например, os.environ или locals()) или модуль.
key – Имя обязательной переменной.
error_message – Кастомное сообщение об ошибке.
- Результат:
Значение переменной, если проверка успешна.
- Исключение:
RequirementsError – Если переменная отсутствует или равна None.