Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hi,
this implements issue #232
First patch allows to get version name from FileObject.
The second patch adds middleware that handles 404 errors of image versions and generates the missing version. I think it is very unobtrusive way to gracefully support image versions included in HTML or other sources outside of template tags. Also on-demand image loading can use this to save server bandwidth and CPU time and make web-server load much less vulnerable to peek loads during image version regeneration. (this would require template tag returning version url without generating the image)
Tested on Apache and uWsgi hostings. uWsgi required no change in configuration, Apache required one additional line to make it pass request for non-existing images to Django.
There is missing support for multiple sites, because I don't know how to implement it.
What do you think? This could also be implemented as a view that user puts on url where the media folder resides. This seems more convenient for me, but probably multiple filebrowser sites could be supported only using the view - corresponding site object will be passed as parameter to view.