Django模板过滤器不断给出“不支持的操作数类型”

时间:2015-03-02 09:29:36

标签: python django datetime django-templates django-template-filters

我的模板过滤器一直出现此错误: "不支持的操作数类型 - :' datetime.datetime'和' datetime.date'"我已经查看了许多处理此错误的其他答案,但我似乎无法找到错误。任何指针都非常赞赏。

这是我的模板过滤器:

@register.filter(name='get_due_date_string')
def get_due_date_string(value):
    delta = value - date.today()

    if delta.days == 0:
        return "Today!"
    elif delta.days < 1:
        return "%s %s ago!" % (abs(delta.days),
            ("day" if abs(delta.days) == 1 else "days"))
    elif delta.days == 1:
        return "Tomorrow"
    elif delta.days > 1:
        return "In %s days" % delta.days

1 个答案:

答案 0 :(得分:1)

您无法在datetimedate对象之间获得增量。您必须从datetime对象中提取日期:

delta = value.date() - date.today()