Coverage for baibu/chat/signals.py: 100%
9 statements
« prev ^ index » next coverage.py v7.10.7, created at 2026-10-06 13:07 +0000
« prev ^ index » next coverage.py v7.10.7, created at 2026-10-06 13:07 +0000
1from django.db import transaction
2from django.db.models.signals import post_delete
3from django.dispatch import receiver
5from baibu.core import storage
7from .models import AudioClip
10@receiver(post_delete, sender=AudioClip)
11def delete_audio_file(sender, instance: AudioClip, **kwargs) -> None:
12 """Remove the recording once the deletion is committed (also when the
13 message, conversation or account is deleted)."""
14 key = instance.storage_key
15 transaction.on_commit(lambda: storage.delete(key))