ДокументацияРасширенный

Интернационализация (i18n)

Nexy не переводит ваше приложение. У него нет промежуточного программного обеспечения локали, нет помощника trans и нет файлов локали: приложение выбирает подходящую ему библиотеку i18n так же, как оно выбирает ORM.

Командная строка (nx) переведена; см. CLI.

В обработчике

Обработчик считывает из запроса то, что ему нужно. Этот отвечает на языке заголовка Accept-Language:

src/routes/hello.py
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> в корневом макете.

Следующие шаги

Изменить на GitHub

Enter открывает результат, Esc закрывает.