Die Auswahl eines zufälligen Elements aus einer Liste aller Datenbankobjekte ist keine gute Lösung, da das Abrufen aller Elemente der Datenbank einen großen Einfluss auf die Leistung haben kann, ebenso wenig wie die Verwendung von order_by('?')
wie in der Django-Dokumentation
erwähnt .
Die beste Lösung sollte darin bestehen, ein Element mit einem zufälligen Index abzurufen:
import random
random_idx = random.randint(0, Model.objects.count() - 1)
random_obj = Model.objects.all()[random_idx]