gpt4 book ai didi

datetime - 如何获取今天创建的对象? (Django-Rest 框架)

转载 作者:行者123 更新时间:2023-12-04 13:48:08 25 4
gpt4 key购买 nike

模型领域:

time = models.DateTimeField()

如何获取(仅)今天(从 00:00:00 到 23:59:59)创建的对象

喜欢:

objects = Model.objects.filter(time__gt=?????????)

还是?

谢谢

最佳答案

您可以使用 datetime.date.today()获取当前日期,然后根据今天的日期过滤对象。

你可以这样做:

import datetime

today = datetime.date.today() # date representing today's date
qs = MyModel.objects.filter(time__gt=today) # filter objects created today

这里,qs 代表今天创建的对象。

另一个解决方案是使用range用于在两个日期之间执行查找。

这里,start_date 代表00:00:00end_date 代表23:59:59

import datetime

today = datetime.datetime.today()
start_date = datetime.datetime(year=today.year, month=today.month, day=today.day, hour=0, minute=0, second=0) # represents 00:00:00
end_date = datetime.datetime(year=today.year, month=today.month, day=today.day, hour=23, minute=59, second=59) # represents 23:59:59
qs = MyModel.objects.filter(time__range=(start_date, end_date)) # today's objects

由于您使用的是 Django Rest Framework,您可能需要覆盖 View 中的 get_queryset() 方法并返回包含今天创建的对象的查询集。

class MyView(..):

def get_queryset(self):
..
return qs # return the queryset created using the above logic

关于datetime - 如何获取今天创建的对象? (Django-Rest 框架),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31787140/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com