def update_user(data, user): user_serializer = UserProfileSerializer(data=data, instance=user) if user_serializer.is_valid(): user_serializer.save() return user_serializer.data else: raise exceptions_utils.ValidationException(user_serializer.errors, status.HTTP_400_BAD_REQUEST)
def put(self, request): user = request.user serializer = UserProfileSerializer(user, data=request.DATA) if serializer.is_valid(): serializer.save() return Response(serializer.data, status=status.HTTP_200_OK) else: return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
def put(self, request): user = request.user serializer = UserProfileSerializer(user, data=request.DATA) if serializer.is_valid(): serializer.save() return Response(serializer.data, status=status.HTTP_200_OK) else: return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
def post(self, request, format=None): user = UserSerializer(data=request.data) if user.is_valid(): u = user.save() else: return Response(user.errors, status=status.HTTP_400_BAD_REQUEST) print u request.data['user'] = u.pk serializer = UserProfileSerializer(data=request.data) if serializer.is_valid(): serializer.save() return Response(serializer.data, status=status.HTTP_201_CREATED, context={'request': request}) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
def update_user(data, user): user_serializer = UserProfileSerializer(data=data, instance=user) if user_serializer.is_valid(): fire_base = firebase.FirebaseApplication( 'https://vogorentals.firebaseio.com/', None) user_serializer.save() result = fire_base.get('/users', None) res = result.keys() urlkey = '' for i in res: if result[str(i)]['id'] == int( user.id ): #replace 2 with id of the element you wish to update urlkey = str(i) rem = fire_base.patch('users/' + urlkey, user_serializer.data) return user_serializer.data else: raise exceptions_utils.ValidationException(user_serializer.errors, status.HTTP_400_BAD_REQUEST)
def post(self, request, format=None): print(request.body) data = json.loads(request.body) # if data['facebook_token']: # return Response("Good Job Josh!", status=status.HTTP_201_CREATED) # else: # return Response({ # 'status': 'Bad Request', # 'message': 'Wrong parameters' # }, status=status.HTTP_400_BAD_REQUEST) graph = facebook.GraphAPI(access_token=data['facebook_token']) profile = graph.get_object("me") first_name, second_name = profile['name'].split() data['first_name'] = first_name data['second_name'] = second_name URL = "https://graph.facebook.com/{}/picture?type=small".format(profile['id']) print(data) print('validation') serializer = UserProfileSerializer(data=data) if serializer.is_valid(): user = serializer.save() user.save() img_temp = NamedTemporaryFile(delete=True) img_temp.write(urllib2.urlopen(URL).read()) img_temp.flush() user.avatar.save(profile['id']+'.png', File(img_temp)) size = (128, 128) mask = Image.new('L', size, 0) draw = ImageDraw.Draw(mask) draw.ellipse((0, 0) + size, fill=255) from reach.settings import BASE_DIR, STATIC_ROOT print(user.avatar) print(os.path.join(BASE_DIR, str(user.avatar))) im = Image.open(os.path.join(STATIC_ROOT, str(user.avatar))) output = ImageOps.fit(im, mask.size, centering=(0.5, 0.5)) output.putalpha(mask) output.save(os.path.join(STATIC_ROOT, str(user.avatar))) return Response(serializer.data, status=status.HTTP_201_CREATED) else: for error in serializer.errors: print error return Response({ 'status': 'Bad Request', 'message': 'Wrong parameters' }, status=status.HTTP_400_BAD_REQUEST)
def patch(self, request, username, format=None): user = self.get_user(username) main_user = self.get_main_user(username) # User Class update main_user_serializer = UserSerializer(main_user, data=request.data, partial=True) if main_user_serializer.is_valid(): u = main_user_serializer.save() else: return Response(main_user_serializer.errors, status=status.HTTP_400_BAD_REQUEST) # UserProfile Class update user_serializer = UserProfileSerializer(user, data=request.data, partial=True, context={'request': request}) if user_serializer.is_valid(): user_serializer.save() return Response(user_serializer.data) return Response(user_serializer.errors, status=status.HTTP_400_BAD_REQUEST)
def put(self, request, username, format=None): user = self.get_user(username) main_user = self.get_main_user(username) # User Class update main_user_serializer = UserSerializer(main_user, data=request.data) if main_user_serializer.is_valid(): u = main_user_serializer.save() else: return Response(main_user_serializer.errors, status=status.HTTP_400_BAD_REQUEST) # UserProfile Class update # request.data['user'] = u.pk user_serializer = UserProfileSerializer(user, data=request.data) if main_user_serializer.is_valid(): # request.data['user'] = u.pk user_serializer.save() return Response(user_serializer.data) return Response(user_serializer.errors, status=status.HTTP_400_BAD_REQUEST)