def edit_profile(request): url = '/rango/' try: profile = request.user.userprofile except UserProfile.DoesNotExist: profile = UserProfile(user=request.user) if request.method == 'POST': profile_form = UserProfileForm(data=request.POST, instance=profile) if profile_form.is_valid(): profile_form.save(commit=False) if 'picture' in request.FILES: print "picture" profile.picture = request.FILES['picture'] profile.save() return redirect(url) else: print profile_form.errors else: profile_form = UserProfileForm(instance=profile) return render(request, 'rango/edit_profile.html', {'profile_form': profile_form} )
def register(request): if request.method == 'POST': user_form = UserForm(data=request.POST) if user_form.is_valid(): user = User() user.email = user_form.cleaned_data['email'] user.username = user.email user.set_password(user_form.cleaned_data['password']) user.save() user_profile = UserProfile() user_profile.user = user user_profile.website = user_form.cleaned_data['website'] if 'picture' in request.FILES: user_profile.picture = request.FILES['picture'] user_profile.save() login(request, user) send_confirmation_email(request, user) messages.success(request,'Registration successfully happened. Now confirm your email.') return redirect('index') else: print(user_form.errors) messages.error(request,'Check out your data, invalid form!.') else: user_form = UserForm() context_dict ={ 'user_form': user_form,} return render(request,'auth/register.html', context_dict)
def register(self, request, form_class): new_user = super(MyRegistrationView, self).register(request, form_class) user_profile = UserProfile() user_profile.user = new_user user_profile.website = form_class.cleaned_data['website'] user_profile.picture = form_class.cleaned_data['picture'] user_profile.save() return user_profile
def add_profile(request): if request.method == 'POST': name = str(request.GET[u'user']) user = User.objects.get(username=name) profile = UserProfile(user=user) profile.website = request.POST[u'website'] profile.picture = request.FILES['picture'] profile.save() return redirect('/rango/') else: profile = UserProfileForm() return render(request, 'rango/add_profile.html', {'profile': profile})