Warum gibt .filter () in Django doppelte Objekte zurück?

Ich habe Django Tutorial gefolgt und kam zu tutorial05.

Ich habe versucht, keine leere Umfrage anzuzeigen, wie im Tutorial beschrieben. Daher habe ich eine Filterbedingung wie diese hinzugefügt:

class IndexView(generic.ListView):
    ...
    def get_queryset(self):
        return Question.objects.filter(
            pub_date__lte=timezone.now(),
            choice__isnull=False
        ).order_by('-pub_date')[:5]

Aber dies gab zwei Objekte zurück, die genau gleich sind.

Meiner Ansicht nach choice__isnull = False hat das Problem verursacht, ist sich aber nicht sicher.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage