我试图将一个事件的结束日期与今天的日期进行比较,以了解该事件是否已经结束。如果活动已经结束,网站用户就不会有报名的按钮,如果活动还没有开始或正在进行,用户就会有一个按钮,可以在html中报名。
我已经在我的HTML模板中尝试了这个方法。
{% if event.end_date|date:"jS F Y H:i" <= today|date:"jS F Y H:i" %}
{% include 'event/includes/enroll.html' %}
但这个按钮显示的是事件是否已经结束。
我想在我的django模型中添加一个这样的方法。
@property
def is_today(self):
return self.datefinish == datetime.today().date()
但我不确定如何导入这个方法并在html模板中使用它。
我想尝试在我的视图中添加一个变量,像这样:(Django - 在'if'语句中检查日期时间)
is_today = model.end_date >= datetime.today()
return render_to_response('template.html', {'is_today': is_today})
但是一个同事写了一个基于类的视图来渲染模板,不知道如何使用基于类的视图添加变量来渲染。我也得到了一个错误。
TypeError: '>=' not supported between instances of 'DeferredAttribute' and 'datetime.datetime'
如果有人能就如何最好地实现我的需求提出建议,我将不胜感激 :D