Вы можете сделать что-то вроде этого:
.navbar-nav {
display: flex;
}
.nav-item {
flex: 1;
text-align: center;
margin: 5px;
}
Решение оказалось простым. Несмотря на то, что я прочитал документацию несколько раз, читать ее утром после ответа Назктера, вероятно, было то, что мне было нужно, спасибо!
Оказывается, что:
{% get_language_info_list for LANGUAGES as languages %}
не нужно. Более простая версия:
{% get_current_language as LANGUAGE_CODE %}
{% get_available_languages as LANGUAGES %}
{% for CODE, NAME in LANGUAGES %}
<a href="/{{ CODE }}{{ request.get_full_path|slice:'6:' }}"
class="mx-3 {% if CODE == LANGUAGE_CODE %}selected{% endif %}"
lang="{{ CODE }}">{{ NAME }}</a>
{% endfor %}
Обратите внимание, что это работает только для полных кодов языка, например, en-us
, как мы используем slice:'6'
.
Данные, которые вы ищете, находятся в переменной LANGUAGE_CODE
. Вы уже получаете его:
{% get_current_language as LANGUAGE_CODE %}
он вернет значение в формате lang-region, что-то вроде: en-us.
это документация на тот случай, если вы ищете дополнительные переменные, подобные этой: