from django.contrib.auth.models import AbstractUser from django.db import models from django.utils.translation import gettext_lazy as _ from django.core.validators import EmailValidator class Profile(AbstractUser): class Droits(models.IntegerChoices): PROFIL_UNDEFINED = -1, _('NON DEFINI') PROFIL_ECOLE = 0, _('ECOLE') PROFIL_ADMIN = 1, _('ADMIN') PROFIL_PARENT = 2, _('PARENT') email = models.EmailField(max_length=255, unique=True, default="", validators=[EmailValidator()]) USERNAME_FIELD = 'email' REQUIRED_FIELDS = ('password', ) code = models.CharField(max_length=200, default="", blank=True) datePeremption = models.CharField(max_length=200, default="", blank=True) droit = models.IntegerField(choices=Droits, default=Droits.PROFIL_UNDEFINED) estConnecte = models.BooleanField(default=False, blank=True) def __str__(self): return self.email + " - " + str(self.droit)