diff --git a/profiles/views.py b/profiles/views.py index b81ec2cdb13554e7f45e37f7b4736f1a9a0c5d85..9835820e3245af27fcc8ff87f4fe82df2c7b0356 100644 --- a/profiles/views.py +++ b/profiles/views.py @@ -6,6 +6,7 @@ from rest_framework import viewsets from rest_framework.decorators import action from rest_framework.response import Response from django_filters.rest_framework import DjangoFilterBackend +from rest_framework import status from visits.serializers import VisitSerializer @@ -28,16 +29,15 @@ class StudentViewSet(viewsets.ModelViewSet): """API endpoint that allows students to be viewed, and profiles to be updated.""" def get_serializer(self, *args, **kwargs): - kwargs['partial'] = True - return super(StudentViewSet, self).get_serializer(*args, **kwargs) + kwargs['partial'] = True + return super(StudentViewSet, self).get_serializer(*args, **kwargs) def get_queryset(self): user = self.request.user if user.is_staff: return Student.objects.all() else: - return Student.objects.filter(user_id = user.id) - + return Student.objects.filter(user_id=user.id) serializer_class = StudentSerializer permission_classes = (DRYPermissions,) @@ -51,3 +51,29 @@ class StudentViewSet(viewsets.ModelViewSet): serializer = VisitSerializer(visits, many=True, context={'request': request}) return Response(serializer.data) + + def update(self, request, pk): + print(self.request.data) + instance = Student.objects.get(user_id=self.request.data["user_id"]) + print(instance) + instance.city = self.request.data["city"] + instance.classType = self.request.data["classType"] + instance.gender = self.request.data["gender"] + instance.addressNumber = self.request.data["addressNumber"] + instance.street = self.request.data["street"] + instance.parentsPhone = self.request.data["parentsPhone"] + instance.personalPhone = self.request.data["personalPhone"] + instance.parentsEmail = self.request.data["parentsEmail"] + instance.school = self.request.data["school"] + instance.grade = self.request.data["grade"] + instance.scholarship = self.request.data["scholarship"] + instance.motherActivity = self.request.data["motherActivity"] + instance.fatherActivity = self.request.data["fatherActivity"] + instance.parentsStatus = self.request.data["parentsStatus"] + instance.dependantsNumber = self.request.data["dependantsNumber"] + instance.specialTeaching = self.request.data["specialTeaching"] + instance.nationality = self.request.data["nationality"] + instance.zipCode = self.request.data["zipCode"] + instance.classType = self.request.data["classType"] + instance.save() + return Response(status=status.HTTP_200_OK)