Django:基于日期过滤对象

时间:2020-12-23 11:05:37

标签: python django date object filter

我正在尝试根据日期字段过滤我的请求。

我想检查某个日期是否大于当前日期。

这是我尝试过的,基于这个答案:How do I filter query objects by date range in Django?

orders.object.filter(deliveryDay__gt = date.today()).order_by('-id')

一旦我拿到了尚未交付的订单,我想将它们返回给我的 API 以便能够在前端处理它们

不幸的是,它在我的查询中不起作用,无论日期如何,它都会向我返回所有订单。

我不明白我的错误在哪里。

这是我的模型:

class order(models.Model):
    user = models.ForeignKey(memberArea, on_delete=models.CASCADE)
    comment = models.TextField(null=True, blank=True)
    orderDay = models.DateTimeField(auto_now_add=True)
    deliveryDay = models.DateField()
    deliveryAddress = models.CharField(max_length=255)
    state = models.CharField(max_length=255, null=True,
                             blank=True, default="Waiting")
    price = models.TextField(null=True, blank=True)
    response = models.TextField(null=True, blank=True)
    shop = models.ForeignKey(Shop, on_delete=models.CASCADE, null=True, blank=True)

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

试试这个:

from datetime import datetime
orders.object.filter(deliveryDay__gt = datetime.now()).order_by('-id')
相关问题