mirror of
https://code.eliotberriot.com/funkwhale/funkwhale.git
synced 2025-10-06 05:09:56 +02:00
Add a detail page for radios
This commit is contained in:
parent
876aee19cf
commit
85aef4422a
6 changed files with 110 additions and 2 deletions
|
@ -20,6 +20,7 @@ class RadioViewSet(
|
|||
mixins.RetrieveModelMixin,
|
||||
mixins.UpdateModelMixin,
|
||||
mixins.ListModelMixin,
|
||||
mixins.DestroyModelMixin,
|
||||
viewsets.GenericViewSet):
|
||||
|
||||
serializer_class = serializers.RadioSerializer
|
||||
|
@ -40,6 +41,17 @@ class RadioViewSet(
|
|||
raise Http404
|
||||
return serializer.save(user=self.request.user)
|
||||
|
||||
@detail_route(methods=['get'])
|
||||
def tracks(self, request, *args, **kwargs):
|
||||
radio = self.get_object()
|
||||
tracks = radio.get_candidates().for_nested_serialization()
|
||||
serializer = TrackSerializerNested(tracks, many=True)
|
||||
data = {
|
||||
'count': len(tracks),
|
||||
'results': serializer.data
|
||||
}
|
||||
return Response(data, status=200)
|
||||
|
||||
@list_route(methods=['get'])
|
||||
def filters(self, request, *args, **kwargs):
|
||||
serializer = serializers.FilterSerializer(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue