Guest User

Untitled

a guest
Nov 2nd, 2018
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.47 KB | None | 0 0
  1. from django.contrib.auth.models import AbstractUser, BaseUserManager
  2. from django.db import models
  3. from django.utils.translation import ugettext_lazy as _
  4. from django.utils import timezone
  5.  
  6. class CustomUser(AbstractUser):
  7. username = None
  8. email = models.EmailField(_('email address'), unique=True, blank=False)
  9. is_manager = models.BooleanField(default=False, blank=False)
  10.  
  11. USERNAME_FIELD = 'email'
  12. REQUIRED_FIELDS = []
  13.  
  14. def __str__(self):
  15. return self.email
  16.  
  17. class CustomUserManager(BaseUserManager):
  18.  
  19. def _create_user(self, email, password, is_staff, is_superuser,is_manager ,**extra_fields):
  20.  
  21. now = timezone.now()
  22.  
  23. if not email:
  24. raise ValueError(_(u'The given username must be set'))
  25. email = self.normalize_email(email)
  26. user = self.model(email=email,
  27. is_staff=is_staff, is_active=True,
  28. is_superuser=is_superuser,is_manager=is_manager , last_login=now,
  29. date_joined=now, **extra_fields)
  30. user.set_password(password)
  31. user.save(using=self._db)
  32. return user
  33.  
  34. def create_user(self, email, password=None, **extra_fields):
  35. return self._create_user(email, password, False, False, False,
  36. **extra_fields)
  37.  
  38. def create_superuser(self, email, password, **extra_fields):
  39. return self._create_user(email, password, True, True, True,
  40. **extra_fields)
Add Comment
Please, Sign In to add comment