dennisv / django-storage-swift

OpenStack Swift storage backend for Django
MIT License
86 stars 59 forks source link

Rewind file before saving #91

Closed KostyaEsmukov closed 6 years ago

KostyaEsmukov commented 7 years ago

This fixes uploading files which position (seek/tell) is not at the beginning. W/o this uploading files with DRF doesn't work.

Though Django states in the doc that file should be at the beginning before saving:

https://github.com/django/django/blob/42847327d1277451ee7a61716f7b9f62f50ecbdc/django/core/files/storage.py#L42-L44

... practically it doesn't matter, because their own FileStorage implicitly rewinds the file automatically:

https://github.com/django/django/blob/42847327d1277451ee7a61716f7b9f62f50ecbdc/django/core/files/storage.py#L351

https://github.com/django/django/blob/42847327d1277451ee7a61716f7b9f62f50ecbdc/django/core/files/base.py#L76

This patch mimics that behaviour and fixes uploading files with DRF.