Spaces:
Running
Running
| from django import forms | |
| from django.contrib.auth import get_user_model | |
| from django.contrib.auth.forms import ReadOnlyPasswordHashField | |
| User=get_user_model() | |
| class UserAdminCreationForm(forms.ModelForm): | |
| class Meta: | |
| model = User | |
| fields = ('username','email') | |
| password = forms.CharField(widget=forms.PasswordInput) | |
| confirm_password = forms.CharField(label="Confirm Password",widget=forms.PasswordInput) | |
| def clean(self): | |
| cleaned_data = super().clean() | |
| password = cleaned_data.get('password') | |
| confirm_password = cleaned_data.get('confirm_password') | |
| if password is not None and password != confirm_password: | |
| self.add_error('confirm_password',"Your password must match") | |
| return cleaned_data | |
| def save(self,commit=True): | |
| user = super().save(commit=False) | |
| user.set_password(self.cleaned_data['password']) | |
| if commit: | |
| user.save() | |
| return user | |
| class UserAdminUpdateForm(forms.ModelForm): | |
| class Meta: | |
| model = User | |
| fields = ('email','username','password') | |
| password = ReadOnlyPasswordHashField() |