Django

Internationalization

gettext and {% translate %}

Internationalization

# settings.py
LANGUAGE_CODE = "en-us"
USE_I18N = True
MIDDLEWARE += ["django.middleware.locale.LocaleMiddleware"]
LOCALE_PATHS = [BASE_DIR / "locale"]
from django.utils.translation import gettext as _

def dashboard(request):
    message = _("Welcome to TaskBoard")
    return render(request, "dashboard.html", {"message": message})
{% load i18n %}
<h1>{% translate "Open tasks" %}</h1>
django-admin makemessages -l fr
django-admin compilemessages