Django i18n: Ingebouwde vertaalfunctie voor Python-webapps
Django wordt geleverd met een volledig internationaliseringsframework op basis van GNU gettext. Markeer strings voor vertaling in views, models en templates met behulp van gettext-functies en template-tags. Django compileert .po-bestanden naar .mo-binaries voor snel opzoeken, en de middleware activeert automatisch de juiste locale op basis van URL-prefixes, cookies of browserheaders.
Django i18n-functies
Django i18n in de praktijk
Gebruik de gettext-functies in Views en ngettext voor meervoudsvormen, en configureer vervolgens LANGUAGES in settings.py om de ondersteunde taalversies te definiëren.
# 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'),
]Gerelateerde handleidingen
Ruby i18n
Vergelijk Django gettext met de op YAML gebaseerde i18n van Ruby on Rails voor vertaalpatronen aan de serverzijde.
JavaScript i18n
Ontdek de JavaScript Intl API voor opmaak aan de clientzijde in combinatie met uw Django-backend.
Vergelijkingen van TMS
Vergelijk vertaalbeheerplatforms om het platform te vinden dat het beste bij uw Django-project past.
Bekijk andere handleidingen voor frameworks
Begin vandaag nog met het lokaliseren van Django
Beheer de vertalingen van uw Django .po-bestanden met AI-gestuurde workflows, CLI-synchronisatie en CDN-levering binnen 50 ms.