Как правильно создать пользователя с помощью allauth и пользовательской модели пользователя в Django 4.0
У меня есть пользовательская модель User, подклассифицированная из django AbstractUser:
class User(AbstractUser):
alias = models.CharField(
"Alias",
max_length=50,
unique=True,
null=True
)
account_uuid = models.UUIDField(blank=True, null=True)
Я установил библиотеку allauth, и все механизмы регистрации/логина работают нормально.
Проблема, с которой я сталкиваюсь, заключается в том, что я хочу импортировать экземпляры пользователей из другой среды.
from apps.users.models import User
user, created = User.objects.update_or_create(
email=account_info.get('contact').get('email_address'),
defaults={
'username': email,
'account_uuid': account_uuid,
'alias': alias
}
)
Когда пользователь ранее вошел в систему с помощью социального коннектора, это обновление/создание вызывает ошибку целостности для ограничения User/email.
Существует ли правильный способ создания экземпляра User так, чтобы не нарушить все базовые отношения, созданные с помощью моделей allauth?