Даниэль Роузман, это код form.py '' '
class UserRegisterForm(UserCreationForm):
password1=forms.CharField(widget=forms.PasswordInput(attrs={'class':'form-control','placeholder':'Enter Password'}),label='Password')
password2=forms.CharField(widget=forms.PasswordInput(attrs={'class':'form-control','placeholder':'Confirm Password'}),label='Confirm Password')
class Meta:
model= User
fields= ('username','first_name','last_name','email', 'password1', 'password2',)
widgets={
'first_name': forms.TextInput(attrs={'class': 'form-control','placeholder':'First Name'}),
'last_name': forms.TextInput(attrs={'class': 'form-control','placeholder':'Last Name'}),
'username': forms.TextInput(attrs={'class': 'form-control','placeholder':'Username'}),
'email': forms.TextInput(attrs={'class': 'form-control','placeholder':'Email'}),
}
class Profile(forms.ModelForm):
class Meta:
model= Teacher
exclude=['t_teacher']
labels= {'t_gender':'Gender','t_departmant':'Department'}
widgets={
't_gender': forms.Select(choices="gender_list",attrs={'class': 'form-control'}),
't_departmant': forms.Select(choices="department_list",attrs={'class': 'form-control'}),
}
' '' view.py '' '
def Reg_View(request):
registered = False
if request.method == 'POST':
user_form = UserRegisterForm(data=request.POST)
profile_form=Profile(request.POST)
if user_form.is_valid() and profile_form.is_valid():
user = user_form.save()
user.refresh_from_db()
user.set_password(user.password)
user.first_name=user_form.cleaned_data.get('first_name')
user.last_name=user_form.cleaned_data.get('last_name')
user.email=user_form.cleaned_data.get('email')
user.save()
user.refresh_from_db()
name=User.objects.get(username=user.username)
p_save=profile_form.save()
p_save.refresh_from_db()
p_save.t_gender = profile_form.cleaned_data.get('t_gender')
p_save.t_departmant=profile_form.cleaned_data.get('t_departmant')
p_save.t_teacher=name
p_save.save()
registered = True
return redirect('/')
else:
print(user_form.errors, profile_form.errors)
else:
user_form = UserRegisterForm()
profile_form=Profile()
return render(request,'Login_app/regform.html',{'user_form':user_form, 'profile_form':profile_form ,'registered':registered })
' ''