diff --git a/biscuit/core/forms.py b/biscuit/core/forms.py index c40e149fc951b0dba40c959bbdc6405a002c9b5e..7b25d80410a3c6b9a73930001ca15e4eb6e4a47a 100644 --- a/biscuit/core/forms.py +++ b/biscuit/core/forms.py @@ -1,5 +1,5 @@ from django import forms -from django.contrib.auth import create_user, get_user_model +from django.contrib.auth import get_user_model from django.utils.translation import ugettext_lazy as _ from .models import Person @@ -16,16 +16,18 @@ class PersonAccountForm(forms.ModelForm): new_user = forms.CharField(required=False) def clean(self) -> None: + User = get_user_model() + if 'new_user' in self.cleaned_data: if 'user' in self.cleaned_data and self.cleaned_data['user']: self.add_error('new_user', _('You cannot set a new username when also selecting an existing user.')) - elif get_user_model().objects.filter(username=self.cleaned_data['new_user']).exists(): + elif User.objects.filter(username=self.cleaned_data['new_user']).exists(): self.add_error('new_user', _('This username is already in use.')) else: - new_user_obj = create_user(self.cleaned_data['new_user'], - self.instance.email, - first_name=self.instance.first_name, - last_name=self.instance.last_name) + new_user_obj = User.objects.create_user(self.cleaned_data['new_user'], + self.instance.email, + first_name=self.instance.first_name, + last_name=self.instance.last_name) self.cleaned_data['user'] = new_user_obj