django - 如何在 Django 上获取当前语言环境的 "short_date_format"?

标签 django localization

我在我的项目上成功设置了 L10N,并且我能够将日期转换为正确的格式。但现在我需要 SHORT_DATE_FORMAT对于我的模板或 context_processor 中的当前语言环境。

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'

有什么线索吗?

顺便说一句,我真正想做的是:获取当前语言环境的格式,以便我可以将其传递给 bootstrap-datepicker 插件。它目前正在使用 m/d/Y django 在 d/m/Y 中给出了一个日期格式。

最佳答案

我必须执行以下操作:

from django.conf import settings
from django.utils import formats 

correct_format = formats.get_format("SHORT_DATE_FORMAT", lang=settings.LANGUAGE_CODE)

关于django - 如何在 Django 上获取当前语言环境的 "short_date_format"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16205903/

相关文章:

python - Django 上下文处理器和表单变量

django - django View 中的密集工作导致gunicorn工作线程崩溃

Django、模板、for 循环和循环

python - NOT NULL 约束失败 Django CreateView

macos - AppleGlot 4.0 在 _NewLoc 中不产生任何结果

iphone - 构建失败,Localized.strings 中的验证失败

python - 在 Django 中使用验证器无法正常工作

ios - 不同语言的 iPad 应用程序

ruby-on-rails - 在 Rails 中同步语言环境 yml 文件工具

python - 为什么 JavaScript 文件在 Django 中应该以不同的方式本地化?