Не найдено: /i18n/setlang/&c=jQuery112409010789662534471_1639045647507

Я пытаюсь перевести приложение Django, используя встроенный i18n. Когда я переключаю язык с помощью формы в index.html, я получаю ошибку, подобную этой.

Not Found: /i18n/setlang/&c=jQuery112409010789662534471_1639045647507
[09/Dec/2021 15:57:40] "GET /i18n/setlang/&c=jQuery112409010789662534471_1639045647507?csrfmiddlewaretoken=hwhDPrPOYd4Jdp5ay6tcPDXy3Zmzc0fJDSIrovR4CofrOj8oZRYvKtJkGJAbmTEK&language=es&_=1639045647517 HTTP/1.1" 404 2552

Я также изменил USE_I18N на true в файле settings.py и добавил следующий код в файл urls.py.

urlpatterns = [
path('i18n/', include('django.conf.urls.i18n')),

]
urlpatterns += i18n_patterns(
    path('admin/', admin.site.urls),
    path('accounts/', include(accounts.accounturls),
)+static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)

Я также определил список разрешенных языков в settings.py, как указано в руководстве. Также создал HTML-страницу для выбора языка.

<form action="{% url 'set_language' %}" method="post">
           {% csrf_token %}
           <input name="next" type="hidden" value="{{ redirect_to }}">
           <select name="language">
           {% get_current_language as LANGUAGE_CODE %}
           {{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 %} class="active"{% endif %}>
                  {{ language.name_local }} ({{ language.code }})
                                            </option>
              {% endfor %}
          </select>
          <button type="submit" value="Go">Go</button>
</form>

Может ли кто-нибудь сказать решение для этой ошибки?

Вернуться на верх