django orm如何获取一个字段去重后的内容?

发布时间 2023-08-08 16:10:45作者: Z哎呀

示例

假如我想获取一个字段去重的结果,类似excel中对一列执行数据去重得到那一列的内容,示例如下:

result1 = Book.objects.values_list('title', flat=True).distinct()
print(result1)
# 上述例子,Book是一个模型类,其中title是该模型类的书名字段,通过values_list flat=True distinct得到想要的去重结果。

# 支持双下划线等语法
result2 = Book.objects.values_list('author__name', flat=True).distinct()
print(result2)
# 上述例子,其中author是关联作者表的外键字段,通过外键获取到name去重后的结果。