gpt4 book ai didi

python - 来自请求的django国家

转载 作者:太空狗 更新时间:2023-10-30 01:33:57 24 4
gpt4 key购买 nike

我正在构建一个 Django (1.6) 站点(带有 twitter bootstrap),它有一些表单,用户必须在其中填写一些日期。我启用了 l10n 和 i18n。日期时间字段由 JQuery 小部件控制。该小部件接受一个参数来定义日期和时间的输入格式。我怎样才能在模板标签中获取当前的 django 日期时间格式,以便我可以将其映射到它的 Javascript 等价物?我想要的是获得完整的语言环境(如 nl_BE、en_US 等),因为我住在比利时,我们讲法语、荷兰语和德语,但我们都使用相同的日期格式。如果我只使用语言(使用 django.utils.translation 中的 get_language),我会看到来自法国和德国的日期格式。

>>> from django.utils import formats
>>> formats.get_format("SHORT_DATE_FORMAT", lang="nl")
Out[27]: u'j-n-Y'
>>> formats.get_format("SHORT_DATE_FORMAT", lang="fr")
Out[28]: u'j N Y'
>>> formats.get_format("SHORT_DATE_FORMAT", lang="de")
Out[29]: u'd.m.Y'

我已经在他们的演示页面上检查了 Django-datetime-widget,但是如果我将浏览器 (chrome) 切换为荷兰语或法语,它不会更改日期格式...

谁有解决这个问题的想法?

最佳答案

听起来您需要创建一些自定义格式文件,因为django 不提供fr_BE、de_BE 和nl_BE 的语言环境格式。参见 https://docs.djangoproject.com/en/1.6/topics/i18n/formatting/#creating-custom-format-files关于如何创建自定义语言环境格式。

它主要涉及创建一个包含新格式的新应用,并使用 FORMAT_MODULE_PATH 设置指定该应用。

你的格式应用应该是这样的:

formats/
__init__.py
fr_BE/
__init__.py
formats.py
nl_BE/
__init__.py
formats.py
de_BE/
__init__.py
formats.py

您还应该在 settings.py 中将 fr-be、de-be 和 nl-be 添加到您的 LANGUAGES

LANGUAGES = (
('nl-be', ugettext_lazy('Dutch (Belgium)')),
('nl-fr', ugettext_lazy('French (Belgium)')),
('nl-de', ugettext_lazy('German (Belgium)')),
)

关于python - 来自请求的django国家,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27049642/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com