Wenn ein QuerySet bewertet wird, wird typischerweise seine Ergebnisse zwischengespeichert. Wenn sich die Daten in der Datenbank möglicherweise geändert haben, seit ein QuerySet bewertet wurde, können Sie aktualisierte Ergebnisse für dieselbe Abfrage erhalten, indem Sie alle () auf einem zuvor ausgewerteten QuerySet aufrufen. < /P>
< /blockquote>
Aber dann unter dem Abschnitt Prefetch_related zeigt es, dass die Verwendung von .All () in den Sub-Objects Ergebnisse aus dem Cache verwendet: < Br />
Code: Select all
>>> restaurants = Restaurant.objects.prefetch_related(
... Prefetch("pizzas", queryset=queryset),
... )
>>> vegetarian_pizzas = restaurants[0].pizzas.all()