我正在使用Django来提供一些XML。部分要求是我的日期格式如下:1969-12-31T18:33:28-06:00
如何以该格式在Django中输出DateField?
答案 0 :(得分:24)
Django 1.2中的新功能,有一个模板标签可以输出您想要的内容:
{{ value|date:"c"}}
来自Django template documentation:
c | ISO 8601格式| 2008-01-02T10:30:00.000123
从技术上讲,这更接近W3-DTF,但足够接近
答案 1 :(得分:7)
由于Django是用Python编写的,
http://docs.python.org/library/datetime.html#datetime.datetime.isoformat
datetime(2002, 12, 25, tzinfo=TZ()).isoformat()
答案 2 :(得分:5)
如果您在Django documentation中查看日期,您会看到支持各种日期格式。基本上在您需要的模板中:
{{ value|date:"some format string" }}
其中格式字符串可以是上面页面上日期下定义的格式字符串之一,也可以是现在函数(包括ISO 8601格式)下定义的自定义格式字符串之一,该格式字符串也在链接到上面的页面上。我假设当你输出到xml时,你的方式与普通网页的模板类似。
更新(2014年8月)
正如Edgar R的另一个回答所示,从版本1.2开始,您现在可以使用内置开关使用格式字符串输出ISO 8601格式的日期:c
答案 3 :(得分:1)