Django i18n: Integrierte Übersetzungsfunktion für Python-Webanwendungen
Django verfügt über ein umfassendes Internationalisierungs-Framework, das auf GNU gettext basiert. Markieren Sie Zeichenfolgen in Ansichten, Modellen und Vorlagen mithilfe von gettext-Funktionen und Template-Tags für die Übersetzung. Django kompiliert .po-Dateien zu .mo-Binärdateien für eine schnelle Suche, und seine Middleware aktiviert automatisch die richtige Sprachumgebung basierend auf URL-Präfixen, Cookies oder Browser-Headern.
Funktionen zur Internationalisierung in Django
Django i18n in der Praxis
Verwenden Sie die gettext-Funktionen in Views und ngettext für Pluralformen und konfigurieren Sie anschließend LANGUAGES in settings.py, um die von Ihnen unterstützten Sprachumgebungen festzulegen.
# 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'),
]Verwandte Anleitungen
Ruby i18n
Vergleichen Sie Django gettext mit der YAML-basierten i18n von Ruby on Rails hinsichtlich der Muster für serverseitige Übersetzungen.
JavaScript i18n
Entdecken Sie die JavaScript-Intl-API für die clientseitige Formatierung in Verbindung mit Ihrem Django-Backend.
TMS-Vergleiche
Vergleichen Sie Übersetzungsmanagement-Plattformen, um die für Ihr Django-Projekt am besten geeignete zu finden.
Entdecken Sie weitere Leitfäden zu Frameworks
Beginnen Sie noch heute mit der Lokalisierung von Django
Verwalten Sie die Übersetzungen Ihrer Django-.po-Dateien mit KI-gestützten Workflows, CLI-Synchronisierung und CDN-Bereitstellung in weniger als 50 ms.