1

我有一个包含 TimeField 对象的模型。我还有一个 django 模板,它以 JSON 格式列出时间字段,例如

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

在不指定任何格式/过滤器等的情况下,这会导致以下结果,例如

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

但是,当我将时间过滤器应用于我的模板时,即

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

我得到以下结果:

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

即我的时间价值被抹去。我不确定发生了什么事?我在同一模型中也有一个日期字段,并且我应用的过滤器(在同一个 django 模板中)按定义工作。

我正在使用 Django 1.4.2

我错过了什么或做得不对?

4

3 回答 3

5

您也将时间格式放在双引号中。尝试:

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

或者

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

或者

"time":"{{ mymodel.mytime|time:\"H:i\" }}",
于 2013-10-14T15:43:33.540 回答
0

由于一些奇怪的原因,不确定是什么..它已经开始工作了!一定是一个错字或过滤器格式的东西?!真的很奇怪。

于 2013-02-27T13:20:26.587 回答
0

时间

根据给定的格式格式化时间。

给定格式可以是预定义的 TIME_FORMAT,也可以是自定义格式,与日期过滤器相同。请注意,预定义格式取决于区域设置。

例如:

{{ 值|时间:"H:i" }}

于 2017-08-15T10:40:00.200 回答