diff --git a/avatar/conf.py b/avatar/conf.py index a29cec6..8859082 100644 --- a/avatar/conf.py +++ b/avatar/conf.py @@ -25,6 +25,7 @@ class AvatarConf(AppConf): ALLOWED_MIMETYPES = None CACHE_TIMEOUT = 60 * 60 STORAGE = settings.DEFAULT_FILE_STORAGE + STORAGE_ALIAS = "default" CLEANUP_DELETED = True AUTO_GENERATE_SIZES = (DEFAULT_SIZE,) FACEBOOK_GET_ID = None diff --git a/avatar/models.py b/avatar/models.py index eca4f67..dec9d31 100644 --- a/avatar/models.py +++ b/avatar/models.py @@ -5,7 +5,6 @@ from io import BytesIO from django.core.files import File from django.core.files.base import ContentFile -from django.core.files.storage import get_storage_class from django.db import models from django.db.models import signals from django.utils.encoding import force_bytes, force_str @@ -17,7 +16,14 @@ from PIL import Image, ImageOps from avatar.conf import settings from avatar.utils import get_username, invalidate_cache -avatar_storage = get_storage_class(settings.AVATAR_STORAGE)() +try: # Django 4.2+ + from django.core.files.storage import storages + + avatar_storage = storages[settings.AVATAR_STORAGE_ALIAS] +except ImportError: + from django.core.files.storage import get_storage_class + + avatar_storage = get_storage_class(settings.AVATAR_STORAGE)() def avatar_path_handler(