add views for player name and season

This commit is contained in:
nprasad2077
2023-04-20 21:50:59 -05:00
parent a1e0443f7c
commit 135f3cbfb9
2 changed files with 29 additions and 1 deletions
+4 -1
View File
@@ -1,6 +1,9 @@
from django.urls import path
from .views import PlayerDataList
from .views import PlayerDataList, PlayerDataByTeamList, PlayerDataBySeasonList, PlayerDataByNameList
urlpatterns = [
path('api/playerdata/', PlayerDataList.as_view(), name='playerdata_list'),
path('api/playerdata/team/<str:team>/', PlayerDataByTeamList.as_view(), name='playerdata_by_team'),
path('api/playerdata/season/<str:season>/', PlayerDataBySeasonList.as_view(), name='playerdata_by_season'),
path('api/playerdata/name/<str:name>/', PlayerDataByNameList.as_view(), name='playerdata_by_name'),
]
+25
View File
@@ -15,3 +15,28 @@ class PlayerDataList(generics.ListCreateAPIView):
# pagination_class = None
# Fetch player data by team
class PlayerDataByTeamList(generics.ListAPIView):
serializer_class = PlayerDataSerializer
def get_queryset(self):
team = self.kwargs['team']
return PlayerData.objects.filter(team=team)
# Fetch player data by season
class PlayerDataBySeasonList(generics.ListAPIView):
serializer_class = PlayerDataSerializer
def get_queryset(self):
season = self.kwargs['season']
return PlayerData.objects.filter(season=season)
# Fetch player data by player name
class PlayerDataByNameList(generics.ListAPIView):
serializer_class = PlayerDataSerializer
def get_queryset(self):
name = self.kwargs['name']
return PlayerData.objects.filter(name__icontains=name)