models.py 943 B

1234567891011121314151617181920212223
  1. from django.db import models
  2. from django.contrib.auth.models import AbstractUser
  3. from django.utils.translation import ugettext_lazy as _
  4. from .managers import UserManager
  5. class User(AbstractUser):
  6. """
  7. Holds information related to an user.
  8. """
  9. REQUIRED_FIELDS = []
  10. USERNAME_FIELD = 'email'
  11. objects = UserManager()
  12. name = models.CharField(_(u'Name'), max_length=100, blank=True)
  13. email = models.EmailField(verbose_name=_(u'Email'),
  14. max_length=255, unique=True,
  15. error_messages={'unique': _('This email already exists')})
  16. age = models.PositiveSmallIntegerField(_('Age'), default=None, )
  17. is_superuser = models.BooleanField(
  18. _('This user is superuser?'), default=False)
  19. is_staff = models.BooleanField(
  20. _('This user can see the admin panel?'), default=False)
  21. is_active = models.BooleanField(_('Is Active'), default=False)