0 Tage Serie
python / beginner
Snippet

Entkoppelte Logik mit Signalen

Signale ermöglichen es Ihnen, Code auszuführen, wenn eine bestimmte Aktion an anderer Stelle in Ihrer Anwendung auftritt, z. B. beim Speichern eines Benutzers.

snippet.py
python
1
2
3
4
5
6
7
8
from django.db.models.signals import post_save
from django.dispatch import receiver
from django.contrib.auth.models import User
@receiver(post_save, sender=User)
def user_created_handler(sender, instance, created, **kwargs):
if created:
print(f'New user: {instance.username}')
django
Erklärung
1
@receiver(post_save, sender=User)
Verbindet diese Funktion mit dem 'post_save'-Signal des User-Modells.
2
if created:
Ein Boolean, der True ist, wenn ein neuer Datensatz erstellt wurde, sonst False.
3
instance
Die tatsächliche Objektinstanz, die gerade gespeichert wurde.