from django.contrib.auth import get_user_model from django.db.models.signals import post_save from django.dispatch import receiver from queues.models import UserQueue from queues.services import get_default_queue User = get_user_model() @receiver(post_save, sender=User) def create_default_queue(sender, instance, created, **kwargs): """Create a UserQueue object when a User gets created.""" if created: user_queue, user_queue_created = UserQueue.objects.get_or_create(user=instance) if user_queue_created: user_queue.queue = get_default_queue() user_queue.save()