我有一个名为Books(models.Model)的Django模型,该模型具有各种字段,包括作者,标题和创建年份。我想在Book模型的所有字段中过滤此列表。例如,如果我搜索“ Winnie”,则希望出现在标题,作者或创建年份中带有“ Winnie”的所有Book实例,但不希望出现相同的模型实例。例如,如果“ Winnie”在特定实例的标题和作者中,则我只希望该实例出现一次。
我尝试使用以下代码来完成此任务:
books = Books.objects.filter(Q(title__icontains=search_query) | Q(author__icontains=search_query) | Q(year_created__icontains(search_query)).order_by("author")
其中search_query是代表搜索查询的变量。
但是,如前所述,我得到了重复的结果。如何防止这些重复的结果?
非常感谢您的帮助!
谢谢!