2016-06-07 12 views
0

So versuche ich eine GET-Anforderung, um die Schüler von einer Schule zu bekommen. und ich habe ein verschachteltes Viewset. Ich versuche zum Beispiel Website/Schulen/1/Studenten zu bekommen. Also muss ich die PK bekommen, die in diesem Fall 1 wäre, ohne in 1 zu hardcodieren, weil es mehr als 1 Schule in meiner Datenbank gibt. Ich habe die Schulen an Schüler gebunden, die auf Schul-IDs basieren. Zum Beispiel hat Schule mit pk = 1 eine ID von 4289.Wie bekomme ich den aktuellen pk, auf den zugegriffen wird?

class SchoolStudentsViewSet(viewsets.ReadOnlyModelViewSet): 
    """ 
    List all the students from a specific school. 
    """ 

    queryset = Student.objects.filter(school_id=pk.id, name='School of Edumacation') 
    serializer_class = StudentSerializer 

Antwort

0

Firgured es heraus!

class SchoolStudentsViewSet(viewsets.ViewSet): 
""" 
List all the students from a specific school. 
""" 
def list(self, request, school_pk=None, **kwargs): 

    queryset = Student.objects.filter(school__pk=school_pk) 
    serializer = StudentSerializer(queryset, many=True, context={'request': request}) 
    return Response(serializer.data) 
Verwandte Themen