Skip to main content

Serve files with Django and reverse-proxies.

Project description

django-downloadview makes it easy to serve files with Django:

  • you manage files with Django (permissions, filters, generation, …);

  • files are stored somewhere or generated somehow (local filesystem, remote storage, memory…);

  • django-downloadview helps you stream the files with very little code;

  • django-downloadview helps you improve performances with reverse proxies, via mechanisms such as Nginx’s X-Accel or Apache’s X-Sendfile.

Example

Let’s serve a file stored in a file field of some model:

from django.conf.urls import url, url_patterns
from django_downloadview import ObjectDownloadView
from demoproject.download.models import Document  # A model with a FileField

# ObjectDownloadView inherits from django.views.generic.BaseDetailView.
download = ObjectDownloadView.as_view(model=Document, file_field='file')

url_patterns = ('',
    url('^download/(?P<slug>[A-Za-z0-9_-]+)/$', download, name='download'),
)

Resources

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-downloadview-1.9.tar.gz (27.3 kB view details)

Uploaded Source

File details

Details for the file django-downloadview-1.9.tar.gz.

File metadata

File hashes

Hashes for django-downloadview-1.9.tar.gz
Algorithm Hash digest
SHA256 8d8b5b3bab393476525cb020fb9e265c6d11cd70254a78d1f4ac32d8df655361
MD5 985d8fbd09b836b2f9ed843afa0796b6
BLAKE2b-256 830d731c502143736517c96360cd4070a6d0a410e032716473b4b9d243774f41

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page