Skip to content
Snippets Groups Projects
Commit c958fa90 authored by Bodor Máté's avatar Bodor Máté
Browse files

update homework permissions and views

parent 16eb721d
No related branches found
No related tags found
No related merge requests found
...@@ -29,9 +29,12 @@ class IsAuthenticatedOrReadOnly(BasePermission): ...@@ -29,9 +29,12 @@ class IsAuthenticatedOrReadOnly(BasePermission):
class IsStaffOrReadOnlyForAuthenticated(BasePermission): class IsStaffOrReadOnlyForAuthenticated(BasePermission):
"""
def has_object_permission(self, request, view, obj): The request is authenticated as a staff, or is a read-only request for authenticated.
return (request.user.is_staff or """
request.method in SAFE_METHODS and def has_permission(self, request, view):
request.user.is_authenticated return (
request.user.is_staff or
request.method in SAFE_METHODS and
request.user.is_authenticated
) )
...@@ -11,13 +11,13 @@ from rest_framework import status ...@@ -11,13 +11,13 @@ from rest_framework import status
class TasksViewSet(viewsets.ModelViewSet): class TasksViewSet(viewsets.ModelViewSet):
serializer_class = serializers.TaskSerializer serializer_class = serializers.TaskSerializer
queryset = models.Task.objects.all() queryset = models.Task.objects.all()
permission_classes = (permissions.IsStaffOrReadOnly, ) permission_classes = (permissions.IsStaffOrReadOnlyForAuthenticated, )
class SolutionViewSet(viewsets.ModelViewSet): class SolutionViewSet(viewsets.ModelViewSet):
serializer_class = serializers.SolutionSerializer serializer_class = serializers.SolutionSerializer
queryset = models.Solution.objects.all() queryset = models.Solution.objects.all()
permission_classes = (permissions.SolutionPermission, ) permission_classes = (permissions.IsStaffOrReadOnlyForAuthenticated, )
def create(self, request, *args, **kwargs): def create(self, request, *args, **kwargs):
serializer = self.get_serializer(data=request.data) serializer = self.get_serializer(data=request.data)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment