Advertisement
Guest User

Untitled

a guest
Jun 27th, 2019
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.22 KB | None | 0 0
  1. class UserManager(BaseUserManager):
  2. def create_user(self, email, password=None, **extra_fields):
  3. """Creates and saves a new user"""
  4.  
  5. if not email:
  6. raise ValueError("Users must have an email address")
  7. user = self.model(email=self.normalize_email(email), **extra_fields)
  8. user.set_password(password)
  9. user.save(using=self._db) # required for supporting multiple databases
  10.  
  11. return user
  12.  
  13. def create_superuser(self, email, password):
  14. """Creates and saves a new superuser"""
  15. user = self.create_user(email, password)
  16. user.is_staff = True
  17. user.is_superuser = True
  18. user.save(using=self._db)
  19.  
  20. return user
  21.  
  22.  
  23. class User(AbstractBaseUser, PermissionsMixin):
  24. """Custom user model that supports using email instead of username"""
  25.  
  26. email = models.EmailField(max_length=255, unique=True)
  27. first_name = models.CharField(max_length=255)
  28. last_name = models.CharField(max_length=255)
  29. is_active = models.BooleanField(default=True)
  30. is_staff = models.BooleanField(default=False)
  31.  
  32. objects = UserManager()
  33.  
  34. USERNAME_FIELD = "email"
  35.  
  36. @property
  37. def full_name(self):
  38. return f'{self.first_name} {self.last_name}'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement