from django.db import models from django.contrib.auth import get_user_model from django.contrib.auth.models import AbstractUser, UserManager User = get_user_model() class LilcityUserManager(UserManager): def create_user(self, username, email=None, password=None, **extra_fields): user = super().create_user(username, email, password, **extra_fields) LilcityUserSettings.objects.create(user=user) return user class LilcityUserProxy(User): objects = LilcityUserManager() class Meta: proxy = True class LilcityUserSettings(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE, related_name='lilcity_user_settings') is_verification_email = models.BooleanField(default=False) facebook_id = models.PositiveIntegerField(null=True, blank=True, unique=True)