#django-templates
#django-шаблоны
Вопрос:
Я пытаюсь отформатировать временную метку в дату, используя {{ timestamp|date:"d M Y" }}
функцию Django.
Я столкнулся с проблемой, когда я могу выводить и просматривать необработанную временную метку {{ timestamp }}
, но форматирование с помощью фильтра ничего не выводит, когда моя страница отображается с использованием {{ timestamp|date:"d M Y" }}
.
Например, прямо сейчас результат {{ timestamp }} - {{ timestamp|date:"d M Y" }}
— это 1317945600 -
когда я загружаю страницу.
Любые предложения о том, что я могу делать неправильно?
Ответ №1:
Проблема в том, что date не требует метки времени, ей нужен объект datetime или date. вы должны проанализировать временную метку в python или создать templatetag.
добавьте это в 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..." }}