MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.locale.LocaleMiddleware',
'django.middleware.common.CommonMiddleware',
'ambassade_app.middleware.ForceLangMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
LANGUAGE_CODE = 'en'
TIME_ZONE = 'UTC'
USE_I18N = True
USE_L10N = True
USE_TZ = True
LANGUAGES = (
('fr', _('French')),
('en', _('English')),
)
PARLER_LANGUAGES = {
None: (
{'code': 'fr',},
{'code': 'en',},
),
'default': {
'fallback': ['fr',],
'hide_untranslated': False,
}
}
PARLER_DEFAULT_LANGUAGE_CODE = 'fr'
base.html <form id="formLang" action="{% url 'set_language' %}" class="form-inline" method="post">
{% csrf_token %}
<input name="next" id="next" type="hidden" value="{{ redirect_to }}">
<select id="selectLang" name="language">
{% get_current_language as LANGUAGE_CODE %}
{% get_available_languages as LANGUAGES %}
{% get_language_info_list for LANGUAGES as languages %}
{% for language in languages %}
<option value="{{ language.code }}" {% if language.code == LANGUAGE_CODE %} selected {% endif %} >
{{ language.name_local }} ({{ language.code }})
</option>
{% endfor %}
</select>
<input type="submit" value="Go" class="lang-btn">
</form>