代码之家  ›  专栏  ›  技术社区  ›  PercySherlock

如何过滤一个多小时前从Django的DateTimeField创建的对象查询集?

  •  0
  • PercySherlock  · 技术社区  · 2 年前

    问题 :

    我试图筛选一个状态在一个多小时内没有改变的模型。

    我试过的 :

    Product.objects.filter(
                    Q(status="PENDING"),
                    Q(created__hour__gt=1)
                ).all().order_by("-created")
    

    : 获取状态为“挂起”但在一个多小时内未更改的对象的查询集。

    1 回复  |  直到 2 年前
        1
  •  4
  •   willeM_ Van Onsem    2 年前

    您可以使用以下选项进行筛选:

    from datetime import timedelta
    from django.db.models.functions import Now
    
    Product.objects.filter(
        status="PENDING", created__lt=Now()-timedelta(hours=1)
    ).order_by('-created')