Django:查询\uuu rang

2024-06-28 20:13:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我创建了以下查询,但收到以下错误SyntaxError: positional argument follows keyword argument。问题似乎是created__range(start_date, end_date)created是一个timestamp以以下格式保存:2019-12-10 21:01:58.309276+00

start_date = datetime.date(2019, 10, 1)

# Filtering a DateTimeField with dates won’t include items on the last day,
# because the bounds are interpreted as “0am on the given date”.
end_date = datetime.date(2019, 11, 1)

Order.objects.filter(
    event__organizer=176,
    created__range(start_date, end_date),
    status__in=(
        OrderStatus.PAID,
        OrderStatus.REFUNDED,
        OrderStatus.PARTIALLY_REFUNDED,
    )
).count()

Tags: thedatetimedateon错误rangeargumentstart
2条回答

更准确地说。。。尝试使用“日期范围”。。。在“range”后面加上“=”号

尝试使用:

start_date = datetime.date(2019, 10, 1)

end_date = datetime.date(2019, 11, 1)


Order.objects.filter(
    event__organizer=176,
    created__date__range=(start_date, end_date),
    status__in=(
        OrderStatus.PAID,
        OrderStatus.REFUNDED,
        OrderStatus.PARTIALLY_REFUNDED,
    )
).count()

缺少=运算符:

start_date = datetime.date(2019, 10, 1)

# Filtering a DateTimeField with dates won’t include items on the last day,
# because the bounds are interpreted as “0am on the given date”.
end_date = datetime.date(2019, 11, 1)

Order.objects.filter(
    event__organizer=176,
    created__range=(start_date, end_date),
    status__in=(
        OrderStatus.PAID,
        OrderStatus.REFUNDED,
        OrderStatus.PARTIALLY_REFUNDED,
    )
).count()

相关问题 更多 >