Как я могу использовать хранилище файлов по умолчанию (S3) для загрузки файлов с помощью мастера форм Django FormTools?
При загрузке файлов django-formtools Form Wizard требуется место для временного хранения, пока пользователь не выполнит все шаги мастера.
Документация FormTools показывает пример того, как загрузить файл в локальную папку на вашем сервере. Параметр file_storage необходим для загрузки файлов.
from django.core.files.storage import FileSystemStorage
class CustomWizardView(WizardView):
file_storage = FileSystemStorage(location=os.path.join(settings.MEDIA_ROOT, 'photos'))
Мы используем Heroku и не имеем доступа к локальному хранилищу при загрузке файла. Мы используем django-хранилища и S3 для хранения всех наших файлов. Я хочу использовать django-хранилища для управления процессом загрузки.
Как я могу просто изменить это представление, чтобы мы использовали систему хранения по умолчанию для загрузки этого файла во временную папку на S3?
1 ответ
Эта конфигурация позволит вам загружать файлы напрямую в хранилище по умолчанию для вашего проекта django. О том, как это работает, вы можете прочитать в документации.
from django.core.files.storage import DefaultStorage
class CustomWizardView(WizardView):
...
file_storage = DefaultStorage()