From ecc80b939de97dcc7817318b3aab9a8243e5005c Mon Sep 17 00:00:00 2001 From: aeltheos Date: Thu, 7 Oct 2021 16:50:35 +0200 Subject: [PATCH] extended UserCreationForm to RegistrationForm, adding fields for email/firstname/lastname --- signup/forms.py | 12 ++++++++++++ signup/views.py | 10 ++++++---- 2 files changed, 18 insertions(+), 4 deletions(-) create mode 100644 signup/forms.py diff --git a/signup/forms.py b/signup/forms.py new file mode 100644 index 0000000..7586d28 --- /dev/null +++ b/signup/forms.py @@ -0,0 +1,12 @@ +from django import forms +from django.contrib.auth.forms import UserCreationForm +from django.contrib.auth.models import User + +class RegistrationForm(UserCreationForm): + email = forms.EmailField(label = "Email",widget=forms.TextInput(), required=True) + first_name = forms.CharField(label="Prénom", widget=forms.TextInput(),required=True) + last_name = forms.CharField(label="Nom", widget=forms.TextInput(),required=True) + + class Meta: + model = User + fields = ["username", "password1", "password2", "email", "first_name", "last_name"] \ No newline at end of file diff --git a/signup/views.py b/signup/views.py index 18fc0ce..bedea06 100644 --- a/signup/views.py +++ b/signup/views.py @@ -4,16 +4,18 @@ from django.http.response import HttpResponse from django.shortcuts import redirect, render -from django.contrib.auth.forms import UserCreationForm -from django.contrib.auth.models import User +from .forms import RegistrationForm def signup(request): if request.method == 'POST': - form = UserCreationForm(request.POST) + form = RegistrationForm(request.POST) if form.is_valid(): user = form.save() + user.first_name = form.cleaned_data.get('first_name') + user.last_name = form.cleaned_data.get('last_name') + user.email = form.cleaned_data.get('email') login(request, user) return redirect('/') return render(request,'signup.html', {'form':form}) else: - form = UserCreationForm() + form = RegistrationForm() return render(request,'signup.html', {'form':form}) \ No newline at end of file