Форматирование TimeField в шаблоне Django ничего не показывает

У меня есть модель, которая включает объект TimeField. У меня также есть шаблон django, в котором указано поле времени в формате JSON, например.

...
   "time":"{{ mymodel.mytime }}",
...

Без указания какого-либо форматирования/фильтров и т. д. это приводит к следующему, например.

....
    "time":"5 p.m.",
....

Однако, когда я применяю временной фильтр к своему шаблону, т.е.

...
   "time":"{{ mymodel.mytime|time:"H:i" }}",
...

Я получаю следующий результат:

...
    "time":"",
...

то есть моя временная ценность стирается. Я не уверен, что происходит? У меня также есть поле даты в той же модели и фильтр, который я применяю к нему (в том же шаблоне django), который работает как определено.

Я использую Джанго 1.4.2.

Что я упускаю или делаю не так?


person FlashAsh99    schedule 27.02.2013    source источник
comment
Вы уверены, что значение time на самом деле является объектом времени, а не строкой? Кажется странным, что его представление по умолчанию — 17:00. а не 17:00:00, как я ожидал.   -  person Daniel Roseman    schedule 27.02.2013
comment
В моей модели у меня есть следующее: mytime = models.TimeField(blank=True, null=True).. Итак, я ожидал бы, что по умолчанию он вернет объект Time правильно?   -  person FlashAsh99    schedule 27.02.2013


Ответы (3)


Вы также указали формат времени в двойных кавычках. пытаться:

"time":"{{ mymodel.mytime|time:'H:i' }}",

or

"time":'{{ mymodel.mytime|time:"H:i" }}',

or

"time":"{{ mymodel.mytime|time:\"H:i\" }}",
person ashkanb0    schedule 14.10.2013

По какой-то странной причине, не знаю какой... Он начал работать! Должно быть, опечатка или что-то в формате фильтра?! Очень странно.

person FlashAsh99    schedule 27.02.2013

время

Форматирует время в соответствии с заданным форматом.

Данный формат может быть предопределенным TIME_FORMAT или пользовательским форматом, таким же, как фильтр даты. Обратите внимание, что предопределенный формат зависит от локали.

Например:

{{ значение|время:"H:i" }}

person Ahmadreza Pourghodrat    schedule 15.08.2017