16 lines
555 B
Python
16 lines
555 B
Python
from django.db.models.signals import post_save
|
|
from django.contrib.auth.models import User
|
|
from django.dispatch import receiver
|
|
from .models import UserProfile
|
|
|
|
AVATAR_COLORS = [
|
|
'#6366f1', '#8b5cf6', '#ec4899', '#f43f5e',
|
|
'#f97316', '#eab308', '#22c55e', '#14b8a6', '#3b82f6'
|
|
]
|
|
|
|
@receiver(post_save, sender=User)
|
|
def create_user_profile(sender, instance, created, **kwargs):
|
|
if created:
|
|
color = AVATAR_COLORS[instance.id % len(AVATAR_COLORS)]
|
|
UserProfile.objects.get_or_create(user=instance, defaults={'avatar_color': color})
|