2025-01-06 16:22:16 +05:30
|
|
|
"""
|
|
|
|
|
dynamic_fields/signals.py
|
|
|
|
|
"""
|
2025-02-26 10:56:53 +05:30
|
|
|
|
2025-01-06 16:22:16 +05:30
|
|
|
from django.core.management import call_command
|
|
|
|
|
from django.db.models.signals import pre_delete
|
2025-02-26 10:56:53 +05:30
|
|
|
from django.dispatch import receiver
|
|
|
|
|
|
2025-01-06 16:22:16 +05:30
|
|
|
from dynamic_fields.models import DynamicField
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@receiver(pre_delete, sender=DynamicField)
|
|
|
|
|
def pre_delete_dynamic_field(sender, instance, **kwargs):
|
|
|
|
|
"""
|
|
|
|
|
method to delete the column from the db before
|
|
|
|
|
deleting the dynamic field
|
|
|
|
|
"""
|
|
|
|
|
call_command("delete_field", *(instance.pk,))
|