我有一个名为MinutePrice
的模型,其中有一个DateTimeField
作为字段之一。
我想做的是查询日期大于15:30的对象,而不管日期是什么。
我尝试过的事情:
MinuetePrice.objects.filter(Q(date_time__lte="15:30"))
发生错误:
ValidationError: ["'15:30' value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ] format."]
有什么办法解决这个问题吗?
答案 0 :(得分:2)
__time过滤器可用于此
MinuetePrice.objects.filter(date_time__time__gt=datetime.time(15, 30))
答案 1 :(得分:0)
如果您希望所有记录的时间都大于15:30,则可以尝试使用Django查询,如下所示:
MinuetePrice.objects.filter(Q(timestamp__hour__gte=16) | Q(timestamp__hour__gte=15, timestamp__minute__gte=30))
答案 2 :(得分:0)
您需要一个datetime对象进行比较,不能直接将它与字符串进行比较。
datetime.time(15,30)
应该可以解决您的问题
希望有帮助!