From 6b022f625e84e5e346327c1f503cf5a1dbb8d712 Mon Sep 17 00:00:00 2001 From: histausse Date: Tue, 1 Sep 2020 16:03:34 +0200 Subject: [PATCH] Add dormitory to the building serialiser --- topologie/api/serializers.py | 8 +++++++- topologie/api/urls.py | 1 + topologie/api/views.py | 9 ++++++++- 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/topologie/api/serializers.py b/topologie/api/serializers.py index 1839fcc8..ce03a842 100644 --- a/topologie/api/serializers.py +++ b/topologie/api/serializers.py @@ -115,8 +115,14 @@ class BuildingSerializer(NamespacedHMSerializer): class Meta: model = topologie.Building - fields = ("name", "api_url") + fields = ("name", "dormitory", "api_url") +class DormitorySerializer(NamespacedHMSerializer): + """Serialize `topologie.models.Dormitory` objects + """ + class Meta: + model = topologie.Dormitory + fields = ("name", "api_url") class SwitchPortSerializer(NamespacedHMSerializer): """Serialize `topologie.models.Port` objects diff --git a/topologie/api/urls.py b/topologie/api/urls.py index f6febb95..1cfd2d3e 100644 --- a/topologie/api/urls.py +++ b/topologie/api/urls.py @@ -30,6 +30,7 @@ urls_viewset = [ (r"topologie/constructorswitch", views.ConstructorSwitchViewSet, None), (r"topologie/switchbay", views.SwitchBayViewSet, None), (r"topologie/building", views.BuildingViewSet, None), + (r"topologie/dormitory", views.DormitoryViewSet, None), (r"topologie/switchport", views.SwitchPortViewSet, "switchport"), (r"topologie/portprofile", views.PortProfileViewSet, "portprofile"), (r"topologie/room", views.RoomViewSet, None) diff --git a/topologie/api/views.py b/topologie/api/views.py index 5e937cda..4cdd5470 100644 --- a/topologie/api/views.py +++ b/topologie/api/views.py @@ -114,6 +114,13 @@ class RoomViewSet(viewsets.ReadOnlyModelViewSet): queryset = topologie.Room.objects.all() serializer_class = serializers.RoomSerializer +class DormitoryViewSet(viewsets.ReadOnlyModelViewSet): + """Exposes list and details of `topologie.models.Dormitory` + objects. + """ + + queryset = topologie.Dormitory.objects.all() + serializer_class = serializers.DormitorySerializer class PortProfileViewSet(viewsets.ReadOnlyModelViewSet): """Exposes list and details of `topologie.models.PortProfile` objects. @@ -146,4 +153,4 @@ class RoleView(generics.ListAPIView): """ queryset = machines.Role.objects.all().prefetch_related("servers") - serializer_class = serializers.RoleSerializer \ No newline at end of file + serializer_class = serializers.RoleSerializer