mirror of
https://github.com/cookiecutter/cookiecutter-django.git
synced 2025-02-25 16:00:47 +03:00
32 lines
840 B
Python
32 lines
840 B
Python
|
from django.contrib.auth import get_user_model, forms
|
||
|
from django.core.exceptions import ValidationError
|
||
|
from django.utils.translation import ugettext_lazy as _
|
||
|
|
||
|
User = get_user_model()
|
||
|
|
||
|
|
||
|
class UserChangeForm(forms.UserChangeForm):
|
||
|
|
||
|
class Meta(forms.UserChangeForm.Meta):
|
||
|
model = User
|
||
|
|
||
|
|
||
|
class UserCreationForm(forms.UserCreationForm):
|
||
|
|
||
|
error_message = forms.UserCreationForm.error_messages.update(
|
||
|
{"duplicate_username": _("This username has already been taken.")}
|
||
|
)
|
||
|
|
||
|
class Meta(forms.UserCreationForm.Meta):
|
||
|
model = User
|
||
|
|
||
|
def clean_username(self):
|
||
|
username = self.cleaned_data["username"]
|
||
|
|
||
|
try:
|
||
|
User.objects.get(username=username)
|
||
|
except User.DoesNotExist:
|
||
|
return username
|
||
|
|
||
|
raise ValidationError(self.error_messages["duplicate_username"])
|