gonets/SRV/docs/_build/markdown/api/utils/i18n.md
2025-10-14 16:11:12 +05:00

1.7 KiB
Raw Blame History

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’. По умолчанию используется русский язык.