【发布时间】:2018-07-11 00:17:52
【问题描述】:
我一直在使用 i18n,因此 URL 包含前缀“/en/”或“/es/”,具体取决于用户的首选语言。
到目前为止,它在使用 Django 1.9 时运行良好,即使用户没有在 URL 中提交前缀(即 mySite.com 将重定向到 mySite.com/en/),它甚至会自动放置前缀。
现在我升级到 2.0,它无法正常工作,并且显示 404 错误:
使用 smce.urls 中定义的 URLconf,Django 按以下顺序尝试了这些 URL 模式:
zh/
^静态/(?P.*)$
^images/(?P.*)$
空路径与其中任何一个都不匹配。
在我的根 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'),
)
任何帮助或指导将不胜感激。
【问题讨论】:
-
你设置
prefix_default_language=False和LANGUAGE_CODE='en', -
太棒了!解决了这个问题。谢谢!你介意回答一下,我可以接受吗?
-
确定@izuzvo,谢谢
标签: python django python-3.x internationalization upgrade