我有一个django应用程序支持两种语言英语和阿拉伯语我需要将默认语言更改为阿拉伯语
LANGUAGE_CODE = 'ar'
LANGUAGES = (
(u'ar', _('Arabic')),
(u'en', _('English')),
)
USE_I18N = True
USE_L10N = True
USE_TZ = False
但是当我打开127.0.0.1:8000时,它会重定向到英语127.0.0.1:8000/en而不是阿拉伯语
url.py包含
urlpatterns = patterns(
'',
url(r'^i18n/', include('django.conf.urls.i18n')),
)
有什么建议吗?
答案 0 :(得分:0)
尝试检查您的MIDDLEWARE_CLASSES是否有django.middleware.locale.LocaleMiddleware。有关实施的更多信息,请参见此网址:https://docs.djangoproject.com/en/1.8/topics/i18n/translation/#how-django-discovers-language-preference
我希望这很有用。
来源:https://docs.djangoproject.com/en/1.8/topics/i18n/translation/
答案 1 :(得分:0)
你的网址对我来说错了。 django.conf.urls.i18n
定义了set_language urlpatterns,您可能希望将其正常包含并仅将i18n_patterns
应用于您的网址,例如:
urlpatterns = patterns(
'',
url(r'^i18n/', include('django.conf.urls.i18n')),
)
urlpatterns += i18n_patterns(
url(r'', include('your.urls')),
)
答案 2 :(得分:0)
您应该仅编辑一件事以使其正常工作: LANGUAGE_CODE ='ar-eg'