我的L10N已成功设置在我的项目中,并且我可以将日期翻译为正确的格式。但是现在我需要SHORT_DATE_FORMAT
作为我的模板或context_processor中的当前语言环境。如何在django上获取当前语言环境的“short_date_format”?
从django.conf.settings
得到它总是给我默认值m/d/Y
。 语言环境当前设置为pt_BR
,因此格式应为d/m/Y
。
In [42]: settings.LANGUAGE_CODE
Out[42]: 'pt-br'
In [43]: settings.USE_L10N
Out[43]: True
In [44]: settings.SHORT_DATE_FORMAT
Out[44]: 'm/d/Y'
任何线索?
顺便说一下,我真正想要做的是:获取当前语言环境的格式,以便我可以将它传递给引导日期选择器插件。它目前使用m/d/Y
,而django以d/m/Y
格式给出日期。
您正在使用设置模块中的LANGUAGE_CODE设置,该设置使其不是动态的(这是Django无法以其他方式确定时使用的默认语言代码)。在视图中,您可以使用request.LANGUAGE_CODE。否则,django.utils.translation.get_language() – bambata 2013-12-10 05:53:40