Ich möchte einen komplexen Filter mit Djangos ORM erstellen.
Modelle:Django-Filterobjekte mit mindestens einem Viele-zu-Viele mit Attributwert
class Book(models.Model):
title = models.TextField()
bestseller = models.BooleanField(default=False)
class Author(models.Model):
name = models.TextField()
books = models.ManytoManyField(Book)
Wie würde ich für alle Autoren abfragen, die mindestens ein Bestseller-Buch haben?
Abfrage:
best_authors = Author.objects.filter(<relevant filter>)
Edit:
Nach dem documentation sollten folgende Arbeiten:
best_authors = Author.objects.filter(books__bestseller=True)
Leider endet die Rückgabe von wiederholten Autorenobjekten (immer und immer wieder der gleiche Autor für jedes Bestsellerbuch).