from rest_framework import viewsets from . import serializers from . import models from common import permissions class TasksViewSet(viewsets.ModelViewSet): serializer_class = serializers.TaskSerializer queryset = models.Task.objects.all() permission_classes = (permissions.IsStaffOrReadOnlyForAuthenticated, ) class SolutionsViewSet(viewsets.ModelViewSet): serializer_class = serializers.SolutionSerializer permission_classes = (permissions.IsStaffOrStudent, ) def get_queryset(self): user = self.request.user queryset = models.Solution.objects.filter(created_by=user.profile) if user.profile.role == 'Staff': queryset = models.Solution.objects.all() profile_id = self.request.query_params.get('profileID', None) if profile_id is not None: queryset = queryset.filter(created_by=profile_id) return queryset