Files
bugsink/users/models.py
Klaas van Schelven 9990f58d9a Email verification
2024-05-30 09:35:01 +02:00

25 lines
959 B
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import secrets
from django.db import models
from django.contrib.auth.models import AbstractUser
from django.conf import settings
class User(AbstractUser):
# > If youre starting a new project, its highly recommended to set up a custom user model, even if the default
# > User model is sufficient for you. This model behaves identically to the default user model, but youll be able
# > to customize it in the future if the need arises
class Meta:
db_table = 'auth_user'
class EmailVerification(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
email = models.EmailField() # redundant, but future-proof for when we allow multiple emails per user
token = models.CharField(max_length=64, default=secrets.token_urlsafe, blank=False, null=False)
created_at = models.DateTimeField(auto_now_add=True)
def __str__(self):
return f"{self.user} ({self.email})"