我正在尝试使用Django的{{ timestamp|date:"d M Y" }}
功能将时间戳格式化为日期。
我遇到了一个问题,我可以使用{{ timestamp }}
输出并查看原始时间戳,但是当使用{{ timestamp|date:"d M Y" }}
呈现我的页面时,通过过滤器格式化不会输出任何内容。
例如,当我加载页面时,{{ timestamp }} - {{ timestamp|date:"d M Y" }}
的结果是1317945600 -
。
有关我可能做错的任何建议吗?
答案 0 :(得分:5)
问题是日期不需要时间戳,它需要日期时间或日期对象。 你必须在python中解析时间戳或制作模板标签。
将此添加到templatetags / mytags.py
from datetime import datetime
from django import template
register = template.Library()
@register.filter("timestamp")
def timestamp(value):
try:
return datetime.fromtimestamp(value)
except AttributeError:
return ''
然后将其与
一起使用{{ some_timestamp_value|timestamp|date:"format..." }}