【发布时间】:2026-02-23 01:20:13
【问题描述】:
我正在尝试将活动的结束日期与今天的日期进行比较,以查看活动是否已结束。如果活动已经结束,网站用户将没有注册按钮,如果活动尚未开始或正在进行,用户将有一个 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 - Checking datetime in an 'if' statement)
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
【问题讨论】:
标签: python django date django-templates comparator