diff --git a/backend/app/models/category.py b/backend/app/models/category.py index 52994cc..efe9a18 100644 --- a/backend/app/models/category.py +++ b/backend/app/models/category.py @@ -51,5 +51,5 @@ class Category(models.Model): @receiver(post_delete, sender=Category) -def on_delete_Audiofile(sender, instance: 'Category', using, **kwargs): +def on_delete_Category(sender, instance: 'Category', using, **kwargs): Category.update_json() diff --git a/backend/app/models/content.py b/backend/app/models/content.py index ad71d92..3806d1b 100644 --- a/backend/app/models/content.py +++ b/backend/app/models/content.py @@ -1,5 +1,7 @@ from django.conf import settings from django.db import models +from django.db.models.signals import post_delete +from django.dispatch import receiver import json from tinymce.models import HTMLField @@ -20,17 +22,13 @@ class Content(models.Model): def save(self, *args, **kwargs): rv = super().save(*args, **kwargs) - self.update_json() + Content.update_json() return rv - def delete(self, *args, **kwargs): - rv = super().delete(*args, **kwargs) - self.update_json() - return rv - - def update_json(self): + @staticmethod + def update_json(): with open(settings.MEDIA_ROOT / 'text.json', 'w') as fp: - json.dump(self.asJson(), fp) + json.dump(Content.asJson(), fp) @staticmethod def asJson() -> 'dict[str, str]': @@ -38,3 +36,8 @@ class Content(models.Model): for x in Content.objects.all(): rv[x.pk] = {'title': x.title, 'body': x.body, 'wide': x.wide} return rv + + +@receiver(post_delete, sender=Content) +def on_delete_Content(sender, instance: 'Content', using, **kwargs): + Content.update_json() diff --git a/backend/app/models/place.py b/backend/app/models/place.py index cf9ac72..8e763cf 100644 --- a/backend/app/models/place.py +++ b/backend/app/models/place.py @@ -117,6 +117,6 @@ class Place(models.Model): @receiver(post_delete, sender=Place) -def on_delete_Audiofile(sender, instance: 'Place', using, **kwargs): +def on_delete_Place(sender, instance: 'Place', using, **kwargs): shutil.rmtree(settings.MEDIA_ROOT / str(instance.pk), ignore_errors=True) Place.update_json()