diff --git a/billard/serializers.py b/billard/serializers.py new file mode 100644 index 0000000..2bd61cc --- /dev/null +++ b/billard/serializers.py @@ -0,0 +1,19 @@ +from billard.models import Client, Location, Table +from rest_framework import serializers + + +class ClientSerializer(serializers.HyperlinkedModelSerializer): + class Meta: + model = Client + fields = ('id', 'location') + + +class LocationSerializer(serializers.HyperlinkedModelSerializer): + class Meta: + model = Location + fields = ('name') + +class TableSerializer(serializers.HyperlinkedModelSerializer): + class Meta: + model = Table + fields = ('client', 'number', 'name') \ No newline at end of file diff --git a/billard/urls.py b/billard/urls.py new file mode 100644 index 0000000..d526b6a --- /dev/null +++ b/billard/urls.py @@ -0,0 +1,12 @@ +from django.conf.urls import url, include +from rest_framework import routers +from billard import views + +router = routers.DefaultRouter() +router.register(r'clients', views.ClientViewSet) +router.register(r'locations', views.LocationViewSet) +router.register(r'tables', views.TableViewSet) + +urlpatterns = [ + url(r'api/v1/', include(router.urls)), + ] \ No newline at end of file diff --git a/billard/views.py b/billard/views.py index 91ea44a..e13e246 100644 --- a/billard/views.py +++ b/billard/views.py @@ -1,3 +1,17 @@ -from django.shortcuts import render +from billard.models import Client, Location, Table +from billard.serializers import ClientSerializer, LocationSerializer, TableSerializer +from rest_framework import viewsets -# Create your views here. + +class ClientViewSet(viewsets.ModelViewSet): + queryset = Client.objects.all() + serializer_class = ClientSerializer + + +class LocationViewSet(viewsets.ModelViewSet): + queryset = Location.objects.all() + serializer_class = LocationSerializer + +class TableViewSet(viewsets.ModelViewSet): + queryset = Table.objects.all() + serializer_class = TableSerializer \ No newline at end of file diff --git a/caromserver/urls.py b/caromserver/urls.py index 5eeea88..ffcdb96 100644 --- a/caromserver/urls.py +++ b/caromserver/urls.py @@ -18,5 +18,6 @@ from django.contrib import admin urlpatterns = [ url(r'^admin/', admin.site.urls), - url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')) + url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')), + url(r'^billard/', include('billard.urls')), ]