Treceți la conținut
Django i18n

Django i18n: Traducere Integrată pentru Aplicații Web Python

Django include un framework complet de internaționalizare bazat pe GNU gettext. Marcați șirurile pentru traducere în vizualizări, modele și șabloane folosind funcțiile gettext și tag-urile de șablon. Django compilează fișierele .po în binare .mo pentru căutare rapidă, iar middleware-ul său activează automat localizarea corectă pe baza prefixelor URL, cookie-urilor sau antetelor browserului.

Capabilities

Funcționalități Django i18n

Integrare GNU gettext cu funcțiile de traducere _() și gettext_lazy()
Fluxul de lucru cu fișierele .po/.mo folosind comenzile makemessages și compilemessages
Etichetele de șablon {% trans %} și {% blocktrans %} pentru traducerile din cadrul șablonului
Suport pentru pluralizare cu ngettext și {% blocktrans count %}
Traducere leneșă cu gettext_lazy() pentru câmpurile modelului și etichetele formularului
LocaleMiddleware pentru detectarea automată a limbii pe baza adreselor URL, a fișierelor cookie și a anteturilor
i18n_patterns pentru redirecționarea URL-urilor cu prefix de localizare (de exemplu, /en/about, /fr/about)
Localizarea câmpurilor de format și model pentru date, numere și valute
Gestionarea datelor și orelor ținând cont de fusul orar cu USE_TZ și integrarea cu pytz
Example

Django i18n în practică

Folosiți funcțiile gettext în vizualizări și ngettext pentru forme de plural, apoi configurați variabila LANGUAGES în settings.py pentru a defini setările de limbă acceptate.

# views.py
from django.utils.translation import gettext as _
from django.utils.translation import ngettext

def welcome(request):
    output = _("Welcome to our site")
    count = 5
    output += ngettext(
        "%(count)d item",
        "%(count)d items",
        count
    ) % {"count": count}
    return HttpResponse(output)

# settings.py
LANGUAGE_CODE = 'en'
USE_I18N = True
LANGUAGES = [
    ('en', 'English'),
    ('fr', 'French'),
    ('de', 'German'),
]

Explorați alte ghiduri privind cadrele de referință

Get started

Începeți localizarea Django chiar azi

Gestionați traducerile fișierelor .po din Django cu ajutorul fluxurilor de lucru bazate pe inteligență artificială, sincronizarea prin interfața CLI și livrarea prin CDN în mai puțin de 50 ms.