from rest_framework import viewsets, filters from rest_framework.permissions import IsAuthenticated from django_filters.rest_framework import DjangoFilterBackend from .models import Exercise from .serializers import ExerciseSerializer from wrestleDesk.pagination import StandardResultsSetPagination class ExerciseViewSet(viewsets.ModelViewSet): queryset = Exercise.objects.all() serializer_class = ExerciseSerializer pagination_class = StandardResultsSetPagination permission_classes = [IsAuthenticated] filter_backends = [DjangoFilterBackend, filters.SearchFilter, filters.OrderingFilter] filterset_fields = ['category', 'exercise_type', 'is_active'] search_fields = ['name', 'description'] ordering_fields = ['name', 'category', 'created_at']