我注意到django-storages(或者也许是Django的存储API本身)会覆盖具有相同名称的文件。这对我来说是个问题,因为我的网站允许用户上传,所以我需要确保文件永远不会被覆盖。

理想情况下,我希望能够从 View 级别将文件名传递到存储后端,但是我一直在努力寻找一种优雅的方式来做到这一点。如果在某个地方可以做类似overwrite=False的操作并让后端提供自己的备用名称,我也会同样高兴。

最佳答案

如果您使用的是s3boto后端而不是django-storages中的旧s3后端,则可以使用AWS_S3_FILE_OVERWRITE设置更改它:https://bitbucket.org/david/django-storages/src/83fa2f0ba20c/storages/backends/s3boto.py#cl-43

09-11 01:34