def get(self, request, *args, **kwargs): pk = kwargs["pk"] assignment = get_object_or_404(Assignment, pk=pk) if not has_obj_persmission(request, assignment): return Response(status=status.HTTP_403_FORBIDDEN) serializer = AssignmentSerializer(assignment) return Response(serializer.data)
def delete(self, request, *args, **kwargs): pk = kwargs["pk"] try: tag = get_object_or_404(Tag, pk=pk) except: return Response(status=status.HTTP_404_NOT_FOUND) if not has_obj_persmission(request, tag): return Response(status=status.HTTP_403_FORBIDDEN) tag.delete() return Response({"message": "Succesful"}, status=200)
def get(self, request, *args, **kwargs): pk = kwargs["pk"] try: tag = get_object_or_404(Tag, pk=pk) except: return Response(status=status.HTTP_404_NOT_FOUND) if not has_obj_persmission(request, tag): return Response(status=status.HTTP_403_FORBIDDEN) serializer = TagSerializer(tag) return Response(serializer.data)
def delete(self, request, *args, **kwargs): pk = kwargs["pk"] try: assignment = get_object_or_404(Assignment, pk=pk) except: return Response(status=status.HTTP_404_NOT_FOUND) assignment = get_object_or_404(Assignment, pk=pk) if not has_obj_persmission(request, assignment): return Response(status=status.HTTP_403_FORBIDDEN) assignment.data.delete() assignment.delete() return Response({"message": "Succesful"}, status=200)
def put(self, request, *args, **kwargs): serializer = TagSerializer() pk = kwargs["pk"] try: tag = get_object_or_404(Tag, pk=pk) except: return Response(status=status.HTTP_404_NOT_FOUND) if not has_obj_persmission(request, tag): return Response(status=status.HTTP_403_FORBIDDEN) try: tag = serializer.update(tag, request.data) except Exception: return Response({"errors": "Invalid input data"}, status=405) return Response({"message": "Succesful"}, status=200)
def put(self, request, *args, **kwargs): pk = kwargs["pk"] serializer = AssignmentSerializer() data = request.data data['editor'] = request.user.id try: assignment = get_object_or_404(Assignment, pk=pk) except: return Response(status=status.HTTP_404_NOT_FOUND) if not has_obj_persmission(request, assignment): return Response(status=status.HTTP_403_FORBIDDEN) try: serializer.update(assignment, data) except Exception: return Response({"errors": "Invalid input data"}, status=405) return Response({"message": "Succesful"}, status=200)