从django.utils.timezone中获取时间

时间:2018-07-04 14:52:58

标签: django timezone

我正在编写一个Django应用,其中有一个事件模型,其中包含一个event_time字段和一个event_date字段。我想检查事件是否已经开始并且正在进行中。

如果为该事件安排的日期等于今天的日期,并且为该事件安排的时间小于现在的时间,则表示该事件已经开始;否则事件尚未开始。

这是我的代码:

context['is_ongoing'] = context['event'][0].event_date == datetime.now().date() and timezone.now().time() >= context['event'][0].event_time

即使True大于现在的时间,我也会得到event_time,而在这种情况下,我想要False

1 个答案:

答案 0 :(得分:0)

从查询集中按数组获取位置,甚至不检查它是否具有难闻的气味,建议不要这样做,如果要让第一个元素尝试使用函数.first()

import datetime

event = context['event'].first()
if event:
    context['is_ongoing'] True if event.event_date >= datetime.datetime.now().date() and event.event_time >= datetime.datetime.now() else False