Django中的日期比较



我需要将预订表中的日期字段与今天的日期进行比较。我试图循环浏览所有预订日期,如果日期小于今天的日期,则将字段状态更改为";已完成";

我一直收到以下错误

"类型错误:'<'在"datetime.date"one_answers"str"的实例之间不支持">

我试着对此进行研究,但我无法解决这个问题。

下面是我的代码。

模型。(ASP预订(

booking_date = models.DateField()

查看

date_today = (datetime.datetime.now())
date_stripped = date_today.strftime('%Y-%m-%d')
asp_date_data = ASPBookings.objects.all()
for booking in asp_date_data:
print (booking.booking_date)
if booking.booking_date < date_stripped:
booking.status == 'Completed'
booking.save()

我检查了字段的输出,去掉时间后,日期显示相同。例如

ASP预订字段日期2021-05-272021-06-242021-06-15

今天的日期2021-06-09

提前感谢你对我的帮助。

错误消息很清楚,这意味着您无法将date对象(booking.booking_date的类型(与字符串(date_stripped的类型(进行比较。试试这个:

date_today = datetime.datetime.now().date() # use this instead of strftime
asp_date_data = ASPBookings.objects.all()
for booking in asp_date_data:
print (booking.booking_date)
if booking.booking_date < date_stripped:
booking.status == 'Completed'
booking.save()

相关内容

  • 没有找到相关文章

最新更新