У меня есть модель Django, которая называется Books (models.Model) и имеет множество полей, включая автора, название и год создания.Я хочу отфильтровать этот список по всем полям модели Book.Например, если я ищу «Винни», я хочу, чтобы все экземпляры Книги с «Винни» в названии, авторе или созданном году появлялись, но НЕ хочу, чтобы один и тот же экземпляр модели появлялся.Например, если «Винни» присутствует в названии И авторе конкретного экземпляра, я хочу, чтобы этот экземпляр появлялся только один раз.
Я попытался использовать следующий код для достижения этой цели:
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 - это переменная, которая представляет поисковый запрос.
Однако я получаю повторяющиеся результаты, как объяснено ранее.Как я могу предотвратить эти повторяющиеся результаты?
Любая помощь с благодарностью!
Спасибо!