1
0
mirror of https://gitlab.crans.org/bde/nk20 synced 2025-06-21 18:08:21 +02:00

Add a bus

This commit is contained in:
Yohann D'ANELLO
2020-04-13 05:02:16 +02:00
parent 6242e316ae
commit 822853be66
12 changed files with 218 additions and 29 deletions

View File

@ -3,7 +3,7 @@
from rest_framework import serializers
from ..models import WEIClub
from ..models import WEIClub, Bus, BusTeam
class WEIClubSerializer(serializers.ModelSerializer):
@ -15,3 +15,25 @@ class WEIClubSerializer(serializers.ModelSerializer):
class Meta:
model = WEIClub
fields = '__all__'
class BusSerializer(serializers.ModelSerializer):
"""
REST API Serializer for Bus.
The djangorestframework plugin will analyse the model `Bus` and parse all fields in the API.
"""
class Meta:
model = Bus
fields = '__all__'
class BusTeamSerializer(serializers.ModelSerializer):
"""
REST API Serializer for Bus teams.
The djangorestframework plugin will analyse the model `BusTeam` and parse all fields in the API.
"""
class Meta:
model = BusTeam
fields = '__all__'

View File

@ -1,11 +1,13 @@
# Copyright (C) 2018-2020 by BDE ENS Paris-Saclay
# SPDX-License-Identifier: GPL-3.0-or-later
from .views import WEIClubViewSet
from .views import WEIClubViewSet, BusViewSet, BusTeamViewSet
def register_wei_urls(router, path):
"""
Configure router for Member REST API.
"""
router.register(path + '/club/', WEIClubViewSet)
router.register(path + '/club', WEIClubViewSet)
router.register(path + '/bus', BusViewSet)
router.register(path + '/team', BusTeamViewSet)

View File

@ -4,8 +4,8 @@
from rest_framework.filters import SearchFilter
from api.viewsets import ReadProtectedModelViewSet
from .serializers import WEIClubSerializer
from ..models import WEIClub
from .serializers import WEIClubSerializer, BusSerializer, BusTeamSerializer
from ..models import WEIClub, Bus, BusTeam
class WEIClubViewSet(ReadProtectedModelViewSet):
@ -18,3 +18,27 @@ class WEIClubViewSet(ReadProtectedModelViewSet):
serializer_class = WEIClubSerializer
filter_backends = [SearchFilter]
search_fields = ['$name', ]
class BusViewSet(ReadProtectedModelViewSet):
"""
REST API View set.
The djangorestframework plugin will get all `Bus` objects, serialize it to JSON with the given serializer,
then render it on /api/wei/bus/
"""
queryset = Bus.objects.all()
serializer_class = BusSerializer
filter_backends = [SearchFilter]
search_fields = ['$name', ]
class BusTeamViewSet(ReadProtectedModelViewSet):
"""
REST API View set.
The djangorestframework plugin will get all `BusTeam` objects, serialize it to JSON with the given serializer,
then render it on /api/wei/team/
"""
queryset = BusTeam.objects.all()
serializer_class = BusTeamSerializer
filter_backends = [SearchFilter]
search_fields = ['$name', ]