Python Django无序类型
使用Django我想检查一个日期是否为未来30天,Python Django无序类型,python,django,Python,Django,使用Django我想检查一个日期是否为未来30天,kwargs['datetime']是DRF给出的日期: from datetime import date, timedelta if kwargs['datetime'] > timedelta(days=30): pass 我得到一个错误: 无序类型:datetime.datetime()>datetime.timedelta() Django时区是否与datatime不兼容,或者我在做其他错误的事情?您可以使用时区获取
kwargs['datetime']
是DRF给出的日期:
from datetime import date, timedelta
if kwargs['datetime'] > timedelta(days=30):
pass
我得到一个错误:
无序类型:datetime.datetime()>datetime.timedelta()
Django时区是否与datatime不兼容,或者我在做其他错误的事情?您可以使用
时区
获取当前日期时间:
from django.utils import timezone
now = timezone.now()
而且,要检查来自DRF的日期时间是否在未来30天之后,您可以将timedelta
添加到now
# or >= as per your requirement
if kwargs['datetime'] > now + timedelta(days=30):
pass
如果禁用时区支持,则可以按如下方式获取当前日期时间:
import datetime
now = datetime.datetime.now()
您可以使用
时区
获取当前日期时间:
from django.utils import timezone
now = timezone.now()
而且,要检查来自DRF的日期时间是否在未来30天之后,您可以将timedelta
添加到now
# or >= as per your requirement
if kwargs['datetime'] > now + timedelta(days=30):
pass
如果禁用时区支持,则可以按如下方式获取当前日期时间:
import datetime
now = datetime.datetime.now()
一个是绝对值,另一个是增量。您需要将增量转换为一个绝对值(通过使用另一个绝对值来引用它)。
timedelta
计算datetime
如果您添加或减去其他日期时间。我不知道你想在这里做什么。@Spaceships请检查我的答案。你想说的是,例如“1987年6月5日”是否大于“一周”。这是一个不同的类别,一个是绝对的,另一个是三角洲。您需要将增量转换为一个绝对值(通过使用另一个绝对值来引用它)。timedelta
计算datetime
如果您添加或减去其他日期时间。我不知道你想在这里做什么。@Spaceships请检查我的答案。你想说的是,例如“1987年6月5日”是否大于“一周”。这是一个不同的类别。