Django翻译问题

时间:2015-03-31 03:45:58

标签: django

我的 settings.py

中有以下内容
LANGUAGE_CODE='es-US'
USE_I18N = True  

我的 MIDDLEWARE_CLASSES 元组中也有 django.middleware.locale.LocaleMiddleware

此配置是否足以看到西班牙语中的Base Django错误消息,还是有更多内容?

不知何故,我的消息仍以英文显示。

1 个答案:

答案 0 :(得分:1)

要查看西班牙语中的Django Base Error,您需要将西班牙语设置为您的活动语言。

要确定哪种语言是您的主动语言,您可以在模板中添加:

{{request.session.django_language}} 

{{request.LANGUAGE_CODE}}

并在视图中查看您的有效语言:

django.utils.translation.get_language()

我建议您使用下一个示例的示例视图来更改语言。

<强> urls.py

url(r'^set_language/(?P<language_code>[\w-]+)/?', 'yourapp.views.set_language', name='set_language'),

<强> views.py

def set_language(request, language_code):
    ''' Change language '''

    request.session['django_language'] = language_code
    translation.activate(language_code)

    return HttpResponseRedirect('/')

我还强烈建议您检查这个Django APP进行翻译:

还有一个教程可以使翻译工作,这个应用程序可以很容易地翻译您标记为翻译的文本