def put(self, request, schid=None, stuid=None): school = self.get_school_object(schid) student = self.get_student_object(stuid) request.data['school_name'] = schid request.data['student_ID'] = stuid if school == False: out_school = "school name is not exist" else: serializer_school = school_serializer(school, data=request.data) if serializer_school.is_valid(): serializer_school.save() out_school = serializer_school.data if student == False: out_student = "student ID is not exist" else: serializer_student = student_serializer(student, data=request.data) if serializer_student.is_valid(): serializer_student.save() out_student = serializer_student.data return Response(data={ "school": out_school, "student": out_student }, status=status.HTTP_200_OK)
def get(self, request): try: serializer = school_serializer(self.get_object(), many=True) print("ishere?") return Response(data=serializer.data, status=status.HTTP_200_OK) except: return Response("School is empty!", status=status.HTTP_400_BAD_REQUEST)
def get(self, request, id=None): try: obj = self.get_school_object(id) if obj == False: return Response(data="Name is not exist", status=status.HTTP_400_BAD_REQUEST) serializer = school_serializer(obj) return Response(data=serializer.data, status=status.HTTP_200_OK) except: return Response(data="Something wrong", status=status.HTTP_400_BAD_REQUEST)
def put(self, request, id=None): try: instance = School.objects.get(school_name=id) except: return Response("Name is not valid", status=status.HTTP_200_OK) request.data['school_name'] = id serializer = school_serializer(instance, data=request.data) if serializer.is_valid(): serializer.save() return Response(data=serializer.data, status=status.HTTP_200_OK) return Response(data="Serializer is not valid", status=status.HTTP_500_INTERNAL_SERVER_ERROR)
def post(self, request): if School.objects.filter( school_name=request.data["school_name"]).count() > 0: return Response("School name already exist", status=status.HTTP_400_BAD_REQUEST) serializer = school_serializer(data=request.data) if serializer.is_valid(): serializer.save() return Response(serializer.data, status=status.HTTP_201_CREATED) else: return Response(data="Serializer is not valid", status=status.HTTP_500_INTERNAL_SERVER_ERROR)
def get(self, request, schid=None, stuid=None): # query = Student_School.objects.filter(school_name=schid,student_ID=stuid) # print(query) school = self.get_school_object(schid) student = self.get_student_object(stuid) if school == False: school_out = list() else: school_out = school_serializer(school).data if student == False: student_out = list() else: student_out = student_serializer(student).data return Response(data={ "school": school_out, "student": student_out }, status=status.HTTP_200_OK)