如何使用特定格式获取Django模板的本地化日期?

时间:2016-03-29 18:49:46

标签: python django date localization django-templates

我在Django模板上获得本地化日期时遇到问题。

我在配置文件中有这个:

LOCALE_NAME ='es_VE'

LANGUAGE_CODE = 'es-ve'

TIME_ZONE = 'America/Caracas'

USE_I18N = True

USE_L10N = True

USE_TZ = True

我想呈现的日期是:mydate=2016-03-21 23:59:59.999999-04:30

此代码{{mydate|date:"d/m/Y"}}显示" 21/03/2016"

这一个{{mydate|localize}}显示" 22 de Marzo de 2016 a las 04:29" (2016年3月22日)。

我想使用日期过滤器格式获取本地化过滤器的结果。

有没有办法实现这个目标?

2 个答案:

答案 0 :(得分:1)

如果我理解正确,您需要本地化的自定义日期格式。 Django的文档适合您:Creating custom format files

答案 1 :(得分:1)

我结束使用自定义模板过滤器:

@register.filter
@stringfilter
def datedate(value,format="%d/%m/%Y"):
    try:
        return parse_datetime(value).strftime(format)
    except Exception as e:
        return ""

所以当我{{mydate|datedate}}时,它会显示" 22/03/2016"

谢谢大家的帮助。