DocsAvançado
Internacionalização (i18n)
Nexy não traduz seu aplicativo. Ele não possui middleware de localidade, nenhum auxiliar trans e nenhum arquivo de localidade: um aplicativo escolhe a biblioteca i18n que mais lhe convém, assim como escolhe um ORM.
A linha de comando (nx) é traduzida; veja a CLI.
Em um manipulador
Um manipulador lê o que precisa da solicitação. Este responde no idioma do cabeçalho 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"])}Em uma página
Use a biblioteca do seu frontend para páginas roteadas pelo cliente (por exemplo i18next, vue-i18n ou uma loja Svelte) e sua biblioteca Python (gettext da biblioteca padrão ou Babel) para .nexy páginas. Defina <html lang> no layout raiz.