File tree Expand file tree Collapse file tree 1 file changed +7
-1
lines changed Expand file tree Collapse file tree 1 file changed +7
-1
lines changed Original file line number Diff line number Diff line change 2
2
3
3
from django .db .transaction import atomic
4
4
5
+ from django .db .models import Prefetch
5
6
from django .shortcuts import get_object_or_404
6
7
from django .db .utils import IntegrityError
7
8
from rest_framework import mixins , status , viewsets
@@ -53,7 +54,12 @@ def get_serializer_class(self):
53
54
54
55
@action (detail = False , methods = ["GET" ], url_path = "with-sponsor" )
55
56
def list_with_levels (self , request , version ):
56
- serializer = self .get_serializer (self .get_queryset (), many = True )
57
+ queryset = self .get_queryset ().prefetch_related (
58
+ Prefetch (
59
+ "sponsor_set" , queryset = Sponsor .objects .filter (paid_at__isnull = False )
60
+ )
61
+ )
62
+ serializer = self .get_serializer (queryset , many = True )
57
63
return Response (serializer .data )
58
64
59
65
@action (detail = False , methods = ["POST" ])
You can’t perform that action at this time.
0 commit comments