team-3/src/c3nav/api/views/editor.py

32 lines
1,009 B
Python
Raw Normal View History

2016-09-13 15:18:24 +02:00
from django.http import Http404
from rest_framework.response import Response
from rest_framework.viewsets import ModelViewSet, ViewSet
2016-09-13 15:18:24 +02:00
from ...editor.hosters import hosters
from ...mapdata.models import Feature
from ..serializers import FeatureSerializer, HosterSerializer
2016-09-13 15:18:24 +02:00
class HosterViewSet(ViewSet):
"""
Get Package Hosters
"""
def list(self, request, version=None):
serializer = HosterSerializer(hosters.values(), many=True, context={'request': request})
return Response(serializer.data)
def retrieve(self, request, pk=None, version=None):
if pk not in hosters:
raise Http404
serializer = HosterSerializer(hosters[pk], context={'request': request})
return Response(serializer.data)
class FeatureViewSet(ModelViewSet):
"""
Get all Map Features including ones that are only part of the current session
"""
queryset = Feature.objects.all()
serializer_class = FeatureSerializer
lookup_value_regex = '[^/]+'