Css Django在重新加载页面后保留下拉选择的语言

Css Django在重新加载页面后保留下拉选择的语言,css,django,forms,dropdown,reload,Css,Django,Forms,Dropdown,Reload,我有一个表单可以更改语言(到目前为止有3种语言),它可以正常工作,只是当页面重新加载时,内容会更改为新语言,但下拉列表中所选的选项会丢失(而是显示默认语言)。重新加载页面后,如何保留所选语言?谢谢你的帮助 <form action="{% url 'set_language' %}" method="POST"> {% csrf_token %} <input type="hidden" id="languageSwitcher

我有一个表单可以更改语言(到目前为止有3种语言),它可以正常工作,只是当页面重新加载时,内容会更改为新语言,但下拉列表中所选的选项会丢失(而是显示默认语言)。重新加载页面后,如何保留所选语言?谢谢你的帮助

 <form action="{% url 'set_language' %}" method="POST">
            {% csrf_token %}
            <input type="hidden" id="languageSwitcher" name="selected" value="{{ redirect_to}}">
            <select name ="language" id="languageField">
              {% 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}} 
              </option>
              {% endfor %}
            </select>
          <input type="submit" id ="languageSwitcher" value="Change">
          </form>

{%csrf_令牌%}
{%get_可用语言为语言%}
{%get_language_info_list for LANGUAGES as LANGUAGES%}
{%用于语言中的语言%}
{{language.name_local}}
{%endfor%}

要在模板中使用
语言\u code
变量,必须首先加载
i18n

将这行代码放在html模板的顶部:

{% load i18n %}
另外,请确保在设置和上下文处理器中启用了
i18n

USE_I18N = True
# ...
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates')],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                # ...
                'django.template.context_processors.i18n',
                # ...
            ],
        },
    },
]

我们可以查看您的views.py吗?我已经在url.py urlpatterns=[path('i18n/',include('django.conf.urls.i18n'))、path('admin/',admin.site.urls])中包含了它。我没有使用任何与语言更改表单相关联的视图,我想我在这里遗漏了很多。我只是添加了'django.template.context\u processors.i18n',它工作起来很有魅力。谢谢lot@Gora没问题!如果这解决了您的问题,您可以按下向下箭头下的“复选标记”。这有助于其他人找到正确的答案,如果他们有同样的问题。祝你好运