【发布时间】:2017-11-30 20:00:08
【问题描述】:
在上传文件时,django-formtools 表单向导需要一个地方来临时存储文件,直到用户完成向导中的所有步骤。
FormTools documentation 显示了如何将文件上传到服务器上的本地文件夹的示例。上传文件需要 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-storages 和 S3 来存储我们所有的文件。我想使用 django-storages 来管理上传过程。
我怎样才能修改这个视图,以便我们使用默认存储系统将此文件上传到 S3 上的临时位置?
【问题讨论】:
-
您的文件是否至少保存在生产服务器的临时位置?或者您只能获取内存文件对象而无法保存它。
-
@ArpitSolanki 是的,文件保存到代码示例中配置的临时位置。我只是不希望它保存在服务器上;主要是因为在生产中我们无法将其保存到服务器。我不相信内存会起作用,因为 formtools 想要一个物理文件。
标签: django django-forms django-formwizard django-storage