sehmaschine/django-filebrowser — pull request #233 by cuchac (2014-07-22 09:13:55+00:00)
Title: On demand versions

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.