gpt4 book ai didi

python - 如何从数据库中获取最近 24 小时的记录

转载 作者:行者123 更新时间:2023-11-28 21:50:19 24 4
gpt4 key购买 nike

我有一个存储用户订单的Orders 模型。我只想过滤过去 24 小时内为用户发出的订单(order_started 字段)。我正在尝试更新以下 View :

def userorders(request):
Orders = Orders.objects.using('db1').filter(order_owner=request.user).extra(select={'order_ended_is_null': 'order_ended IS NULL',},)

订单模型有以下字段:

order_uid = models.TextField(primary_key=True)
order_owner = models.TextField()
order_started = models.DateTimeField()
order_ended = models.DateTimeField(blank=True, null=True)

如何添加额外的过滤器?

最佳答案

您可以按如下方式进行,在 filter 调用中添加另一个参数(假设您的函数的其余部分正常工作):

import datetime

def userorders(request):
time_24_hours_ago = datetime.datetime.now() - datetime.timedelta(days=1)
orders = Orders.objects.using('db1').filter(
order_owner=request.user,
order_started__gte=time_24_hours_ago
).extra(select={'order_ended_is_null': 'order_ended IS NULL',},)

请注意,Orders 不是变量名的好选择,因为它引用项目中的另一个类并以大写开头(通常用于类),所以我使用了 orders 而不是(不同的大小写)。

关于python - 如何从数据库中获取最近 24 小时的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32050331/

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