Django 如何将文件直接上传到第 3 部分存储服务器,如 Cloudinary、S3



现在,我意识到上传过程是这样的:

1. 生成 HTTP 请求对象,并将值设置为请求。使用上载处理程序进行文件。

2. 在 views.py 中,作为 FileField 镜像的 FieldFile 实例将调用 storage.save(( 上传文件。


所以,如你所见,django 总是使用缓存或磁盘来传递数据,如果你的文件太大,它会花费太多时间。

我想解决这个问题的设计是自定义一个上传处理程序,它将通过使用输入原始数据调用 storage.save((。唯一的问题是我如何修改文件字段的操作?

感谢您的任何帮助。

你可以使用这个包

将直接上传到 AWS S3 功能,并将进度条添加到文件输入字段。

https://github.com/bradleyg/django-s3direct

您可以使用以下软件包
之一 https://github.com/cloudinary/pycloudinary
http://django-storages.readthedocs.io/en/latest/backends/amazon-S3.html

最新更新