MCPcopy Create free account
hub / github.com/codemistic/Web-Development / StudentAPI

Class StudentAPI

django_rest/core/home/views.py:41–106  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

39from rest_framework_simplejwt.authentication import JWTAuthentication
40
41class StudentAPI(APIView):
42
43 # authentication_classes = [TokenAuthentication]
44 authentication_classes = [JWTAuthentication]
45 permission_classes =[IsAuthenticated]
46
47 def get(self,request):
48 student_objs = Student.objects.all()
49 serializer = StudentSerializer(student_objs,many=True)
50 return Response({'status':200,'payload':serializer.data})
51
52 def post(self,request):
53
54 serializer = StudentSerializer(data = request.data)
55
56 if not serializer.is_valid():
57 return Response({'status':403,'message':'something went wrong'})
58
59 serializer.save()
60 return Response({'status':200,'payload':serializer.data,'message':'you sent'})
61
62
63 def put(self,request):
64 try:
65 student_obj = Student.objects.get(id=request.data['id'])
66
67 serializer = StudentSerializer(student_obj,data = request.data)
68 if not serializer.is_valid():
69 return Response({'status':403,'errors': serializer.errors,'message':'something went wrong'})
70
71 serializer.save()
72
73 return Response({'status':200,'payload':serializer.data,'message':'you data is updated'})
74
75 except Exception as e:
76 return Response({'status':403,'message':'invalid_id'})
77
78
79
80 def patch(self,request):
81 try:
82 student_obj = Student.objects.get(id=request.data['id'])
83
84 serializer = StudentSerializer(student_obj,data = request.data,partial=True)
85 if not serializer.is_valid():
86 return Response({'status':403,'errors': serializer.errors,'message':'something went wrong'})
87
88 serializer.save()
89
90 return Response({'status':200,'payload':serializer.data,'message':'you data is updated'})
91
92 except Exception as e:
93 return Response({'status':403,'message':'invalid_id'})
94
95
96
97 def delete(self,request):
98 try:

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected