Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python django应用程序中的区域设置未更改_Python_Django I18n - Fatal编程技术网

Python django应用程序中的区域设置未更改

Python django应用程序中的区域设置未更改,python,django-i18n,Python,Django I18n,我是Django的新手,我需要做一个I18N系统。我有一个url.py: from django.contrib import admin from django.urls import path, include from . import views urlpatterns = [ path('', views.index, name='home'), path(r'^i18n/', include('django.conf.urls.i18n')), ] 我制作了这个ht

我是Django的新手,我需要做一个I18N系统。我有一个url.py:

from django.contrib import admin
from django.urls import path, include
from . import views
urlpatterns = [
    path('', views.index, name='home'),
    path(r'^i18n/', include('django.conf.urls.i18n')),
]
我制作了这个html来改变语言:

{% load i18n %}
<form action="/i18n/setlang/" method="post">
    {% csrf_token %}
    <input name="next" type="hidden" value="{{request.path}}" />
    <select 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="selected"{% endif %}>
                {{ language.name_local }} ({{ language.code }})
            </option>
        {% endfor %}
    </select>
    <input type="submit" value="Go" />
</form>
{%loadi18n%}
{%csrf_令牌%}
{%get_当前语言为语言代码%}
{%get_可用语言为语言%}
{%get_language_info_list for LANGUAGES as LANGUAGES%}
{%用于语言中的语言%}
{{language.name_local}}({{language.code}})
{%endfor%}
但当我点击“Go”按钮时,服务器的响应是:找不到页面(404),当前路径i18n/setlang/与这些路径中的任何一个都不匹配。我仍然使用python 3.6和Django 2.0.4

我不知道该如何解决它。

问题就在这里:

path(r'^i18n/', include('django.conf.urls.i18n')),
我剪掉了r'^':

path('i18n/', include('django.conf.urls.i18n')),
而且有效