authentik.tenants.signals

authentik tenants signals

 1"""authentik tenants signals"""
 2
 3from django.db import models
 4from django.db.models.signals import pre_delete
 5from django.dispatch import receiver
 6from django_tenants.utils import get_public_schema_name
 7
 8from authentik.tenants.models import Tenant
 9
10
11@receiver(pre_delete, sender=Tenant)
12def tenants_ensure_no_default_delete(sender, instance: Tenant, **kwargs):
13    if instance.schema_name == get_public_schema_name():
14        raise models.ProtectedError("Cannot delete schema public", instance)
@receiver(pre_delete, sender=Tenant)
def tenants_ensure_no_default_delete(sender, instance: authentik.tenants.models.Tenant, **kwargs):
12@receiver(pre_delete, sender=Tenant)
13def tenants_ensure_no_default_delete(sender, instance: Tenant, **kwargs):
14    if instance.schema_name == get_public_schema_name():
15        raise models.ProtectedError("Cannot delete schema public", instance)