Django-import-export: Настраиваемое хранилище не работает с minio

Следуя документации, я пытаюсь настроить библиотеку на сохранение временных файлов импорта со страницы администратора в ведро MinIO.

Вот моя конфигурация STORAGES:


IMPORT_EXPORT_TMP_STORAGE_CLASS = "import_export.tmp_storages.MediaStorage"

STORAGES = {
    "default": {
        "BACKEND": "django.core.files.storage.FileSystemStorage",
    },
    "staticfiles": {
        "BACKEND": "django.contrib.staticfiles.storage.ManifestStaticFilesStorage",
    },
    "import_export": {
        "BACKEND": "storages.backends.s3.S3Storage",
        "OPTIONS": {
            "bucket_name": os.getenv("PORTAL_S3_BUCKET_NAME"),
            "region_name": os.getenv("PORTAL_S3_REGION_NAME"),
            "access_key": os.getenv("PORTAL_S3_ACCESS_KEY"),
            "secret_key": os.getenv("PORTAL_S3_SECRET_KEY"),
        },
    },
}

Полагаю, что когда я импортирую файл со страницы администратора и дохожу до шага подтверждения, я должен видеть файл, который я пытаюсь загрузить в ведро, но этого не происходит. Ничего не загружается.

Когда я не задаю ничего относительно хранилища и использую хранилище хост-сервера по умолчанию, я могу видеть файлы на хост-машине после шага подтверждения, поэтому я предполагаю, что я должен видеть файл в ведре, как только он настроен.

Я также пытался отладить библиотеку, но не смог увидеть никакой информации о подключении к bucket.

Проблема не имеет ничего общего с конфигурацией MinIO. Я пробовал извлекать и загружать файлы в ведро с помощью Postman с ключами, которые я использую в дикте STORAGES, и все работает как по маслу.

Я не знаю, что еще можно сделать, потому что конфигурация не сложная и не гибкая, поэтому у меня нет других вариантов, чтобы попробовать.

Версии библиотек, которые я использую, следующие:

boto3==1.34.131
Django==4.2.11
django-storages==1.14.3
django-import-export==4.0.8

Я думаю, что это ошибка в django-import-export. В документации Django говорится, что STORAGES следует использовать для Django v4.2 и выше, однако django-import-export не проверяет это корректно. Я подниму этот вопрос как ошибку

Если вы не можете ждать исправления, не могли бы вы перейти на версию Django 5.0?

ОБНОВИТЬ

Это исправлено в v4.0.10

Вернуться на верх