diff --git a/mapper/api/views.py b/mapper/api/views.py index c0b3054..b4d7037 100644 --- a/mapper/api/views.py +++ b/mapper/api/views.py @@ -3,6 +3,7 @@ from rest_framework import viewsets from rest_framework import generics from rest_framework.response import Response +from rest_framework.decorators import list_route from api.models import Map, MapPoint from api.serializers import MapSerializer, MapPointSerializer @@ -13,7 +14,18 @@ class MapViewSet(viewsets.ModelViewSet): """ queryset = Map.objects.all() serializer_class = MapSerializer - + + @list_route() + def recent_maps(self, request): + recent_maps = Map.objects.all().order_by('-updated_at') + + page = self.paginate_queryset(recent_maps) + if page is not None: + serializer = self.get_serializer(page, many=True) + return self.get_paginated_response(serializer.data) + + serializer = self.get_serializer(recent_maps, many=True) + return Response(serializer.data) class MapPointFilter(django_filters.FilterSet):