refactor admin user forms

remotes/origin/HEAD
Max Yakovenko 8 years ago
parent d1c27f363f
commit dc0d7a4c33
  1. 17
      accounts_ext/forms.py

@ -5,6 +5,7 @@ from crispy_forms.layout import Layout, Field, Div, Submit, HTML
from django import forms from django import forms
from django.conf import settings from django.conf import settings
from django.contrib.auth import get_user_model, password_validation from django.contrib.auth import get_user_model, password_validation
from django.forms import ALL_FIELDS
from django.urls import reverse, reverse_lazy from django.urls import reverse, reverse_lazy
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from django_email_blacklist import DisposableEmailChecker from django_email_blacklist import DisposableEmailChecker
@ -265,30 +266,26 @@ class CompanyForm(forms.Form):
class UserChangeForm(UserChangeFormBase): class UserChangeForm(UserChangeFormBase):
status = forms.ChoiceField(choices=STATUS_CHOICES)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
super.init_fields(self.fields)
class Meta: class Meta:
model = get_user_model() model = get_user_model()
fields = '__all__' fields = ('status',)
class UserCreationForm(UserCreationFormBase): class UserCreationForm(UserCreationFormBase):
def clean_email(self): def clean_email(self):
email = super().clean_email() email = self.cleaned_data['email']
if DisposableEmailChecker().is_disposable(email): if DisposableEmailChecker().is_disposable(email):
raise forms.ValidationError(_('Введите email с валидными доменом')) raise forms.ValidationError(_('Введите email с валидными доменом'))
return email return email
class Meta(UserCreationFormBase.Meta): class Meta:
model = get_user_model() model = get_user_model()
fields = ('email', 'username', 'status',) fields = ('email', 'username', 'status', 'is_superuser')
field_classes = { field_classes = {
'email': forms.EmailField, 'email': forms.EmailField,
'username': UsernameField, 'username': UsernameField,
'status': forms.ChoiceField 'status': forms.ChoiceField,
'is_superuser': forms.BooleanField
} }

Loading…
Cancel
Save