diff --git a/avatar/api/__init__.py b/avatar/api/__init__.py index d087506..e69de29 100644 --- a/avatar/api/__init__.py +++ b/avatar/api/__init__.py @@ -1 +0,0 @@ -import avatar.api.signals diff --git a/avatar/api/apps.py b/avatar/api/apps.py index f139ac4..34fc212 100644 --- a/avatar/api/apps.py +++ b/avatar/api/apps.py @@ -1,6 +1,22 @@ from django.apps import AppConfig +from django.db.models import signals + +from avatar.models import Avatar class ApiConfig(AppConfig): default_auto_field = "django.db.models.BigAutoField" name = "avatar.api" + + def ready(self): + from .conf import settings as api_settings + from .signals import ( + create_default_thumbnails, + remove_previous_avatar_images_when_update, + ) + + if api_settings.API_AVATAR_CHANGE_IMAGE: + signals.pre_save.connect( + remove_previous_avatar_images_when_update, sender=Avatar + ) + signals.post_save.connect(create_default_thumbnails, sender=Avatar) diff --git a/avatar/api/conf.py b/avatar/api/conf.py index 8e601c5..66b2b06 100644 --- a/avatar/api/conf.py +++ b/avatar/api/conf.py @@ -1,5 +1,4 @@ from appconf import AppConf -from django.conf import settings class AvatarAPIConf(AppConf): diff --git a/avatar/api/signals.py b/avatar/api/signals.py index 14c5dbf..b50f13e 100644 --- a/avatar/api/signals.py +++ b/avatar/api/signals.py @@ -1,8 +1,5 @@ import os -from django.db.models import signals - -from avatar.api.conf import settings as api_settings from avatar.api.shortcut import get_object_or_none from avatar.conf import settings from avatar.models import Avatar, invalidate_avatar_cache @@ -47,10 +44,5 @@ def remove_previous_avatar_images_when_update( if update_main_avatar: if old_instance.avatar.storage.exists(old_instance.avatar.name): old_instance.avatar.storage.delete(old_instance.avatar.name) - except FileNotFoundError as e: + except FileNotFoundError: pass - - -if api_settings.API_AVATAR_CHANGE_IMAGE: - signals.pre_save.connect(remove_previous_avatar_images_when_update, sender=Avatar) - signals.post_save.connect(create_default_thumbnails, sender=Avatar)