def post(self): obj = User.query.filter(User.username==current_identity.username).first() update_form = ProfileUpdateForm(request.form, csrf_enabled=False) if update_form.validate(): update_form.save(obj) return {"status": "success, Profile updated!"} return update_form.errors
def profile_update_view(request): request.JSON = JsonRequest(request) data = { 'first_name' : request.JSON.get('first_name', False), 'last_name' : request.JSON.get('last_name', False), 'birth_date' : request.JSON.get('birth_date', False), 'country_id' : request.JSON.get('country_id', False), } response = Response() form = ProfileUpdateForm(data) if form.is_valid(): #update user account user = request.user user.first_name = data['first_name'] user.last_name = data['last_name'] user.save() # update user profile user_profile = request.user.get_profile() user_profile.birth_date = data['birth_date'] user_profile.country_id = data['country_id'] user_profile.save() response.add_message('success', 'Informacion actualizada correctamente') else: response.add_message('error', 'Error al actualizar la informacion') response.read_form(form.errors); return HttpResponse(response.result('json'), mimetype='application/json')
def profileupdate(request): ## profile update form if request.method == 'POST' and 'profileupdate' in request.POST: profileform = ProfileUpdateForm(request.POST, request.FILES, instance=request.user) if profileform.is_valid(): profileform.save() messages.success(request, 'Profile details updated') return HttpResponseRedirect(reverse('profile-update')) else: profileform = ProfileUpdateForm(instance=request.user) ## password change form if request.method == 'POST' and 'passwordchange' in request.POST: passwordform = SetPasswordForm(request.user, request.POST) if passwordform.is_valid(): passwordform.save() messages.success(request, 'Password changed') return HttpResponseRedirect(reverse('profile-update') + '#body') else: passwordform = SetPasswordForm(request.user) return render(request, 'accounts/update.html', { 'profileform': profileform, 'passwordform': passwordform, })
def put(self): data = ImmutableMultiDict(request.json) obj = User.query.filter(User.username==current_identity.username).first() update_form = ProfileUpdateForm(data, csrf_enabled=False) if update_form.validate(): profile = update_form.save(obj) return jsonify({"status": "success","data": BaseUserSerializer().dump(profile).data}) return update_form.errors