1.7 KiB
1.7 KiB
utils.i18n
Утилиты локализации и зависимости переводов для FastAPI.
- Содержимое модуля:
- get_translations(): фабрика зависимости FastAPI, считывающая локаль из query-параметра locale, cookie locale или заголовка Accept-Language (по приоритету), с дефолтом ru. Возвращает функцию-зависимость, которая подгружает babel.support.Translations из каталога SRV/locales.
- _(): удобная обёртка для получения перевода строки с использованием текущей локали (или дефолтного ru, если контекст запроса не передан).
- Особенности:
- При отсутствии словаря перевода для выбранной локали выполняется fallback на русскую локаль, что гарантирует наличие строк интерфейса.
- Локаль определяется только по первому языку из Accept-Language (без региональных суффиксов) для упрощения.
- Модуль ведёт отладочное логирование выбора и загрузки локали.
utils.i18n.get_translations() → callable
Создаёт зависимость для загрузки переводов на основе заголовка Accept-Language или параметра запроса ‘locale’. По умолчанию используется русский язык.