ДокументацияРасширенный
Интернационализация (i18n)
Nexy не переводит ваше приложение. У него нет промежуточного программного обеспечения локали, нет помощника trans и нет файлов локали: приложение выбирает подходящую ему библиотеку i18n так же, как оно выбирает ORM.
Командная строка (nx) переведена; см. CLI.
В обработчике
Обработчик считывает из запроса то, что ему нужно. Этот отвечает на языке заголовка Accept-Language:
from nexy.http import Header MESSAGES = {"en": "Hello", "fr": "Bonjour"} async def GET(accept_language: str = Header("en")): language = accept_language.split(",")[0].split("-")[0].lower() return {"message": MESSAGES.get(language, MESSAGES["en"])}На странице
Используйте библиотеку вашего внешнего интерфейса для страниц, маршрутизируемых клиентом (например, i18next, vue-i18n или хранилище Svelte и вашу библиотеку Python (gettext из стандартной библиотеки или Babel) для .nexy страниц. Установите <html lang> в корневом макете.