Skip to content
Snippets Groups Projects
views.py 953 B
Newer Older
  • Learn to ignore specific revisions
  • Bodor Máté's avatar
    Bodor Máté committed
    from rest_framework import viewsets
    
    Bodor Mate's avatar
    Bodor Mate committed
    from rest_framework.permissions import IsAuthenticated
    
    Bodor Máté's avatar
    Bodor Máté committed
    from . import serializers
    from . import models
    
    
    class TasksViewSet(viewsets.ModelViewSet):
        serializer_class = serializers.TaskSerializer
        queryset = models.Task.objects.all()
    
        permission_classes = (permissions.IsStaffOrReadOnlyForAuthenticated, )
    
    Bodor Máté's avatar
    Bodor Máté committed
    
    
    
    class SolutionsViewSet(viewsets.ModelViewSet):
    
    Bodor Máté's avatar
    Bodor Máté committed
        serializer_class = serializers.SolutionSerializer
    
    Bodor Mate's avatar
    Bodor Mate committed
        permission_classes = (IsAuthenticated, )
    
    Bodor Mate's avatar
    Bodor Mate committed
    
    
    Bodor Mate's avatar
    Bodor Mate committed
        def get_queryset(self):
            user = self.request.user
            queryset = models.Solution.objects.filter(created_by=user)
            if user.has_perm(permissions.IsStaffUser):
                queryset = models.Solution.objects.all()
                user_id = self.request.query_params.get('userID', None)
                if user_id is not None:
                    queryset = queryset.filter(created_by=user_id)
            return queryset