Enhanced cache_page decorator for Django views.
Compatibility
Django-cache properly works with Django 1.8, 1.9, 1.10 and 1.11 on Python 2.7, 3.4, 3.5 and 3.6.
Advantages
fixed certain amount of bugs (including #15855)
support of callable
cache_timeoutandkey_prefixparameterscache age can be limited by client (min cache age is manageable, default is 0)
Usage
from djangocache import cache_page
@cache_page(cache_timeout=600)
def view(request):
pass
Combination with last_modified and/or etag view decorators
If you planning to use cache_page among with last_modified and/or etag the latter must be placed after cache_page:
from djangocache import cache_page
from django.views.decorators.http import last_modified, etag
def etag_generator(request, *args, **kwargs):
return 'ETag!!'
@cache_page(cache_timeout=600)
@etag(etag_generator)
def view(request, *args, **kwargs):
pass
Django Settings
DJANGOCACHE_MIN_AGE - used to set minimal age of cache. Default is 0, meaning that client can ask server to skip cache by providing header Cache-Control: max-age=0.
@cache_page params
cache_timeout. Default is settings.CACHE_MIDDLEWARE_SECONDS.
key_prefix. Default is settings.CACHE_MIDDLEWARE_KEY_PREFIX.
cache_alias. Default is settings.CACHE_MIDDLEWARE_ALIAS, or settings.DEFAULT_CACHE_ALIAS if set to None.
cache_min_age. Default is settings.DJANGOCACHE_MIN_AGE.
Installation
pip install --upgrade django-cache
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file django-cache-0.3.tar.gz.
File metadata
- Download URL: django-cache-0.3.tar.gz
- Upload date:
- Size: 4.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
004885c0da998b2d0e11e40aede0c9054476010303ee9cf40f93d7e93ec9f1d0
|
|
| MD5 |
0e5bd9c4ccc2fe6950aca95c24a51ee0
|
|
| BLAKE2b-256 |
6608e8213959253f3062f20004d10364779b44e577c34c7dd3175cd723e37f75
|