split feature model – beginnings (still missing: API, Forms, Editor)

This commit is contained in:
Laura Klünder 2016-10-12 15:25:00 +02:00
parent 55a7e20df1
commit 0036b27057
15 changed files with 238 additions and 156 deletions

View file

@ -1,5 +1,6 @@
import mimetypes
import os
from itertools import chain
from django.conf import settings
from django.core.files import File
@ -8,7 +9,8 @@ from rest_framework.decorators import detail_route
from rest_framework.response import Response
from rest_framework.viewsets import ReadOnlyModelViewSet, ViewSet
from c3nav.mapdata.models import FEATURE_TYPES, Feature, Level, Package, Source
from c3nav.mapdata.models import FEATURE_TYPES, Level, Package, Source
from c3nav.mapdata.models.features import Feature
from c3nav.mapdata.permissions import filter_source_queryset
from c3nav.mapdata.serializers import (FeatureSerializer, FeatureTypeSerializer, LevelSerializer, PackageSerializer,
SourceSerializer)
@ -89,7 +91,15 @@ class FeatureViewSet(ReadOnlyModelViewSet):
"""
List and retrieve map features you have access to
"""
queryset = Feature.objects.all()
model = Feature
base_name = 'feature'
serializer_class = FeatureSerializer
lookup_field = 'name'
lookup_value_regex = '[^/]+'
def get_queryset(self):
querysets = []
for name, model in FEATURE_TYPES.items():
querysets.append(model.objects.all())
return chain(*querysets)