models.py 1.0 KB

123456789101112131415161718192021222324252627
  1. """
  2. Users Models
  3. """
  4. from django.db import models
  5. from django.contrib.auth.models import AbstractBaseUser, PermissionsMixin
  6. from django.utils.translation import ugettext_lazy as _
  7. from .managers import UserManager
  8. class User(AbstractBaseUser, PermissionsMixin):
  9. """
  10. Holds information related to an user.
  11. """
  12. REQUIRED_FIELDS = []
  13. USERNAME_FIELD = 'email'
  14. objects = UserManager()
  15. name = models.CharField(_(u'Name'), max_length=100, help_text='Your name here',
  16. unique=False)
  17. email = models.EmailField(verbose_name=_(u'Email'),
  18. max_length=255, unique=True,
  19. help_text='Unique field',
  20. error_messages={'unique': _('This email already exists')})
  21. age = models.PositiveSmallIntegerField(_('Age'), help_text='Allow only positive integers')
  22. is_staff = models.BooleanField(
  23. _('This user can see the admin panel?'), default=False)
  24. is_active = models.BooleanField(_('Is Active'), default=False)