Skip to main content

Middleware that disables caching headers in Django

Project description

Middleware that disables caching headers during development in Django.

In production you will typically a CDN or browser cache to speed up subsequent reads of your pages. This ensures reads don’t need to hit your DB as often.

from django.views.decorators.cache import cache_control

@method_decorator(cache_control(public=True, max_age=60 * 5)), name="dispatch")
def my_view(request):
    ...

However this is annoying during development as you always want to serve fresh pages and static files on page refresh. Using this middleware in development strips out the cache headers and prevents the browser (or dev cache) from caching your content.

Quickstart

Install Django disable cache headers:

pip install django-disable-cache-headers

Add it to your INSTALLED_APPS:

INSTALLED_APPS = (
    ...
    'disable_cache_headers.apps.DisableCacheHeadersConfig',
    ...
)

Add the middleware in your development settings, e.g in config/settings/local.py.

from .base import *
MIDDLEWARE += ["disable_cache_headers.middleware.DisableCacheControl"]

Running Tests

python -m venv venv
source ./venv/bin/activate
pip install -r requirements_test.txt
pytest

History

0.1.0 (2019-08-22)

  • First release on PyPI.

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-disable-cache-headers-0.0.1.tar.gz (3.8 kB view details)

Uploaded Source

File details

Details for the file django-disable-cache-headers-0.0.1.tar.gz.

File metadata

  • Download URL: django-disable-cache-headers-0.0.1.tar.gz
  • Upload date:
  • Size: 3.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.18.4 setuptools/40.6.3 requests-toolbelt/0.9.1 tqdm/4.34.0 CPython/3.6.8

File hashes

Hashes for django-disable-cache-headers-0.0.1.tar.gz
Algorithm Hash digest
SHA256 2b94e3d5ff4a9c2e599454c2ee8cf58e1dc65bd32b2c3e9fbdab83a923b8529e
MD5 611bb4c4d7e59e693085b232ac33760b
BLAKE2b-256 1e664a008c28e5e091c9dc24dbec7380f4b599831c727630c6426fc70f147ceb

See more details on using hashes here.

Supported by

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