gpt4 book ai didi

django - 在注解上使用 distinct

转载 作者:行者123 更新时间:2023-12-04 17:46:47 24 4
gpt4 key购买 nike

我正在尝试获取不同的项目列表。数据库有一个创建的字段,它是日期时间,我需要它作为我查询的日期。所以我添加了一个注释。问题是 distinct 对注释不起作用...

distinct_failed_recharges = recharges.filter(
status=FAILED
).annotate(
created_date=TruncDate('created')
).distinct(
'created_date', 'sim', 'product_type', 'failure_reason'
).values_list('id', flat=True)

这是我得到的错误:

django.core.exceptions.FieldError: Cannot resolve keyword 'created_date' into field

最佳答案

我在 django 1.11 中遇到同样的错误:

qs = queryset.annotate(day=TruncDay('date')).distinct('day')
ids = list(qs.values_list('id', flat=True))

出现此错误的结果:

FieldError: Cannot resolve keyword 'day' into field.

这很奇怪,因为我尝试评估“id”...

我发现的唯一解决方法是:

qs = queryset.annotate(day=TruncDay('date')).distinct('day')
objects_list = list(qs)
ids = [object.id for object in objects_list]

这是非常低效的,但希望我的列表不会太长......

关于django - 在注解上使用 distinct,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48089915/

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