繁体   English   中英

django个人过滤器日期时间

[英]django personal filter datetime

我想找到日期与15天后的日期之间的天数。 我创建一个个人过滤器:

register = template.Library()

import datetime

@register.filter
def nbDays(thedate):
    res = 0
    passed = datetime.datetime.now() - thedate
    res = 15 - passed   
return res

我有这个错误:

can't subtract offset-naive and offset-aware datetimes

当我调用该方法时:

{% load nameOfFile %}

{{ objectGood.created_at|nbDays }}

如果您在设置中启用了时区,则需要使所有datetime对象都知道时区。

Django使这变得非常容易。

register = template.Library()

from django.utils import timezone

@register.filter
def nbDays(thedate):
    res = 0
    passed = timezone.now() - thedate
    res = 15 - passed   
return res

或者,您可以从日期时间对象中删除时区感知;

timezone_unaware_date = thedate.replace(tzinfo=None)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM