Add serializers, document api endpoints, rename url parameter for clarity

This commit is contained in:
Roberto Rosario
2014-07-09 14:24:32 -04:00
parent e60d5fedfa
commit c7a3afc35a
8 changed files with 74 additions and 19 deletions
+21
View File
@@ -0,0 +1,21 @@
from __future__ import absolute_import
from django.contrib.auth.models import Group, User
from rest_framework import serializers
from rest_framework.reverse import reverse
class APISerializer(serializers.Serializer):
name = serializers.CharField()
url = serializers.URLField()
class APIAppSerializer(serializers.Serializer):
name = serializers.CharField()
url = serializers.URLField()
class APIVersionSerializer(serializers.Serializer):
apps = APIAppSerializer()
+7
View File
@@ -11,6 +11,7 @@ from rest_framework.response import Response
from rest_framework.reverse import reverse
from .classes import APIEndPoint
from .serializers import APIAppSerializer, APISerializer, APIVersionSerializer
logger = logging.getLogger(__name__)
@@ -23,6 +24,8 @@ class APIBase(generics.GenericAPIView):
Main entry point of the API.
"""
serializer_class = APISerializer
def get(self, request, format=None):
return Response([
{'name': 'Version 0', 'url': reverse('api-version-0', request=request, format=format)}
@@ -34,6 +37,8 @@ class Version_0(generics.GenericAPIView):
API version 0 entry points.
"""
serializer_class = APIVersionSerializer
def get(self, request, format=None):
return Response({
'apps': [
@@ -47,6 +52,8 @@ class APIAppView(generics.GenericAPIView):
Entry points of the selected app.
"""
serializer_class = APIAppSerializer
def get(self, request, app_name, format=None):
result = []