Files
Pinry/users/models.py

30 lines
713 B
Python
Raw Permalink Normal View History

import hashlib
from django.contrib.auth.models import User as BaseUser
2022-02-18 20:27:19 -08:00
from django.db.models.signals import post_save
from django.dispatch import receiver
def create_token_if_necessary(user: BaseUser):
from rest_framework.authtoken.models import Token
token = Token.objects.filter(user=user).first()
if token is not None:
return token
else:
return Token.objects.create(user=user)
class User(BaseUser):
@property
def gravatar(self):
2017-09-23 21:12:54 +00:00
return hashlib.md5(self.email.encode('utf-8')).hexdigest()
class Meta:
2017-09-23 21:12:54 +00:00
proxy = True
2022-02-18 20:27:19 -08:00
@receiver(post_save, sender=User)
def create_profile(sender, instance: User, **kwargs):
create_token_if_necessary(instance)