diff --git a/avatar/conf.py b/avatar/conf.py index caf3da9..36e132b 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..6931dc1 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,12 @@ 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(