DRF poskytuje a super-užitočný tzv Model.views vytvoriť rozhranie API so základnými akciami REST a mapovať model Django pomocou niekoľkých riadkov kódu, ako sú tieto:
class MyObjectsViewSet(viewsets.ModelViewSet):
"""
A simple ViewSet for viewing and editing instances.
"""
queryset = MyObjects.all()
serializer_class = MyObjectsSerializer
Ak sa dostanem http://myUrl/{pk}/
Dostávam údaje o inštancii MyObjects, ktoré sú identifikované pk
.
Existuje spôsob, ako požiadať API o vrátenie zoznamu ďalších príkladov, a to tak, že odovzdá zoznam ich pks nejakým spôsobom?
odpovede:
4 pre odpoveď č. 1Podľa:
http://www.django-rest-framework.org/api-guide/filtering/
Môžete robiť napríklad:
class MyObjectsViewSet(viewsets.ModelViewSet):
"""
A simple ViewSet for viewing and editing instances.
"""
serializer_class = MyObjectsSerializer
def get_queryset(self):
queryset = MyModel.objects.all()
pks = self.request.query_params.get("pks", None)
if pks is not None:
queryset = queryset.filter(pks__in=pks)
return queryset