def post(self, request, format=None): user = request.user print(user.id) try: query_set = User.objects.get(pk=user.id) print(user.id) print(user.address_1) print(user.postcode) except User.DoesNotExist: return Response("no user found", status=HTTP_404_NOT_FOUND) print("we got a queryset") data = request.data print("we got data") print(data) serializer = UserProfileSerializer(request.user, data=data) if serializer.is_valid(): serializer.save() return Response("Yay we did it!", HTTP_200_OK) else: return Response(serializer.errors)
def register_user(request): if request.method == 'POST': serializers = UserProfileSerializer(data=request.data) if serializers.is_valid(): serializers.save() return Response(serializers.data, status=status.HTTP_201_CREATED) return Response(serializers.errors, status=status.HTTP_400_BAD_REQUEST)
def put(self, request, username, format=None): profile = self.get_object(username) serializer = UserProfileSerializer(profile, data=request.data) if serializer.is_valid(): serializer.save() return Response(serializer.data, status=status.HTTP_201_CREATED) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
def post(self,request,*args, **kwargs): user=request.user user_profile=UserProfile.objects.get_or_create(user=user) serializer=UserProfileSerializer(user_profile[0],data=request.data) if serializer.is_valid(): serializer.save() return JsonResponse({'detail':'success'}) else: print("pp:",serializer.errors) return JsonResponse(serializer.errors,status=400)
def post(self, request, format=None): user = request.user try: profile = UserProfile.objects.get(user=user) serializer = UserProfileSerializer(profile) return Response(serializer.data, status=status.HTTP_200_OK) except UserProfile.DoesNotExist: serializer = UserProfileSerializer(data=request.data) if serializer.is_valid(): serializer.save(user=request.user) _create_default_labels(request.user) _create_customer_profile(request.user) return Response(serializer.data, status=status.HTTP_201_CREATED) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
def update(self, request, pk=None): #get the authenticated user user = request.user data = request.data serializer = UserProfileSerializer(user, data=data) if serializer.is_valid(): serializer.save() if user: return Response("user profile updated successfully", HTTP_200_OK) else: return Response(serializer.errors, HTTP_400_BAD_REQUEST)
def put(self, request, pk): # modify profile if pk == "": profile = get_object_or_404(Profile, uzer_id=request.user.pk) pk = profile.pk instance = get_object_or_404(Profile, pk=pk) serializer = UserProfileSerializer(instance, data=request.data, partial=True) try: if serializer.is_valid(): serializer.save() return Response(serializer.data, status=status.HTTP_200_OK) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) except Exception: strerr = "Erreur put profile : [{}] [{}]".format( sys.exc_info()[0], sys.exc_info()[1]) return Response(strerr, status=status.HTTP_400_BAD_REQUEST)
def post(self, request, format=None): userprofile_serializer = UserProfileSerializer(data=request.DATA) reg_serializer = RegistrationSerializer(data=request.DATA) if 'device' in request.DATA: phone_serializer = DeviceSerializer(data=request.DATA['device']) else: phone_serializer = DeviceSerializer(data=request.DATA) errors = {} if userprofile_serializer.is_valid() and reg_serializer.is_valid() and phone_serializer.is_valid(): user = reg_serializer.save() data = reg_serializer.data phone = phone_serializer.object phone.user = user phone_serializer.save() data.update(phone_serializer.data) user_profile = userprofile_serializer.object user_profile.user = user userprofile_serializer.save() data.update(userprofile_serializer.data) # trigger user activation to send welcome email signals.user_activated.send(sender=self.__class__, user=user, request=request) # return the right client client = Client.objects.get(pk=1) data.update({'client_id': client.client_id, 'client_secret': client.client_secret}) return Response(data, status=status.HTTP_201_CREATED) errors.update(reg_serializer.errors) errors.update(phone_serializer.errors) errors.update(userprofile_serializer.errors) return Response(errors, status=status.HTTP_400_BAD_REQUEST)
def test_save_updates_correct_fields(self): """ Calling `.save()` should update correct fields on model. """ serializer = UserProfileSerializer( self.profile, data=self.data, context=self.context ) if serializer.is_valid(): new_profile = serializer.save() self.assertEqual(new_profile.website, self.data['website']) self.assertEqual(new_profile.about_me, self.data['about_me']) self.assertEqual(new_profile.user, self.user)
def post(self, request): serializer = UserProfileSerializer(data=request.data) if serializer.is_valid(): serializer.save(user=request.user) return Response(serializer.data, status=status.HTTP_201_CREATED)