Django 2.0 国际化 | i18n_patterns 不工作
Django 2.0 Internationalization | i18n_patterns not working
我一直在使用 i18n,因此 URL 包含前缀“/en/”或“/es/”,具体取决于用户的首选语言。
到目前为止它在使用 Django 1.9 时工作正常,它甚至自动放置前缀,即使用户没有在 URL 中提交它(即 mySite.com 将重定向到 mySite。com/en/).
现在我已升级到 2.0,它无法正常工作并显示 404 错误:
Using the URLconf defined in smce.urls, Django tried these URL patterns, in this order:
en/
^static/(?P.*)$
^images/(?P.*)$
The empty path didn't match any of these.
在我的根 urls.py 我有:
urlpatterns = i18n_patterns(
path('admin/', admin.site.urls),
path('login/', anonymous_required(views.login), {'template_name': 'login.html', 'authentication_form': LoginForm}, name='login'),
path('', include('matrix.urls'), name='matrix'),
)
如有任何帮助或指导,我们将不胜感激。
为了解决这个问题,只需在 settings.py
中设置这些配置
LANGUAGE_CODE='en'
prefix_default_language=False
我一直在使用 i18n,因此 URL 包含前缀“/en/”或“/es/”,具体取决于用户的首选语言。
到目前为止它在使用 Django 1.9 时工作正常,它甚至自动放置前缀,即使用户没有在 URL 中提交它(即 mySite.com 将重定向到 mySite。com/en/).
现在我已升级到 2.0,它无法正常工作并显示 404 错误:
Using the URLconf defined in smce.urls, Django tried these URL patterns, in this order:
en/
^static/(?P.*)$
^images/(?P.*)$
The empty path didn't match any of these.
在我的根 urls.py 我有:
urlpatterns = i18n_patterns(
path('admin/', admin.site.urls),
path('login/', anonymous_required(views.login), {'template_name': 'login.html', 'authentication_form': LoginForm}, name='login'),
path('', include('matrix.urls'), name='matrix'),
)
如有任何帮助或指导,我们将不胜感激。
为了解决这个问题,只需在 settings.py
中设置这些配置 LANGUAGE_CODE='en'
prefix_default_language=False