Add sports API

This commit is contained in:
2023-02-27 13:07:18 -05:00
parent d34e56aa89
commit ce1541bb2d
4 changed files with 128 additions and 0 deletions

View File

View File

@ -0,0 +1,52 @@
from rest_framework import serializers
from sports.models import (
League,
SportEvent,
Round,
Player,
Team,
Season,
Sport,
)
class SportEventSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = SportEvent
fields = "__all__"
class LeagueSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = League
fields = "__all__"
class RoundSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Round
fields = "__all__"
class PlayerSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Player
fields = "__all__"
class TeamSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Team
fields = "__all__"
class SeasonSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Season
fields = "__all__"
class SportSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Sport
fields = "__all__"

View File

@ -0,0 +1,61 @@
from rest_framework import permissions, viewsets
from sports.api.serializers import (
LeagueSerializer,
PlayerSerializer,
RoundSerializer,
SeasonSerializer,
SportEventSerializer,
SportSerializer,
TeamSerializer,
)
from sports.models import (
League,
Player,
Round,
Season,
Sport,
SportEvent,
Team,
)
class SportEventViewSet(viewsets.ModelViewSet):
queryset = SportEvent.objects.all().order_by('-created')
serializer_class = SportEventSerializer
permission_classes = [permissions.IsAuthenticated]
class LeagueViewSet(viewsets.ModelViewSet):
queryset = League.objects.all().order_by('-created')
serializer_class = LeagueSerializer
permission_classes = [permissions.IsAuthenticated]
class RoundViewSet(viewsets.ModelViewSet):
queryset = Round.objects.all().order_by('-created')
serializer_class = RoundSerializer
permission_classes = [permissions.IsAuthenticated]
class SportViewSet(viewsets.ModelViewSet):
queryset = Sport.objects.all().order_by('-created')
serializer_class = SportSerializer
permission_classes = [permissions.IsAuthenticated]
class PlayerViewSet(viewsets.ModelViewSet):
queryset = Player.objects.all().order_by('-created')
serializer_class = PlayerSerializer
permission_classes = [permissions.IsAuthenticated]
class TeamViewSet(viewsets.ModelViewSet):
queryset = Team.objects.all().order_by('-created')
serializer_class = TeamSerializer
permission_classes = [permissions.IsAuthenticated]
class SeasonViewSet(viewsets.ModelViewSet):
queryset = Season.objects.all().order_by('-created')
serializer_class = SeasonSerializer
permission_classes = [permissions.IsAuthenticated]

View File

@ -20,6 +20,15 @@ from vrobbler.apps.scrobbles.api.views import (
LastFmImportViewSet,
ScrobbleViewSet,
)
from vrobbler.apps.sports.api.views import (
LeagueViewSet,
PlayerViewSet,
RoundViewSet,
SeasonViewSet,
SportEventViewSet,
SportViewSet,
TeamViewSet,
)
from vrobbler.apps.videos import urls as video_urls
from vrobbler.apps.videos.api.views import SeriesViewSet, VideoViewSet
@ -35,6 +44,12 @@ router.register(r'series', SeriesViewSet)
router.register(r'videos', VideoViewSet)
router.register(r'authors', AuthorViewSet)
router.register(r'books', BookViewSet)
router.register(r'leagues', LeagueViewSet)
router.register(r'sports', SportViewSet)
router.register(r'seasons', SeasonViewSet)
router.register(r'players', PlayerViewSet)
router.register(r'sport-events', SportEventViewSet)
router.register(r'teams', TeamViewSet)
router.register(r'users', UserViewSet)
router.register(r'user_profiles', UserProfileViewSet)