https://github.com/saulshanabrook/django-response-timeout
Set response cache times for the whole site
https://github.com/saulshanabrook/django-response-timeout
Last synced: 6 months ago
JSON representation
Set response cache times for the whole site
- Host: GitHub
- URL: https://github.com/saulshanabrook/django-response-timeout
- Owner: saulshanabrook
- License: mit
- Created: 2013-07-09T23:14:34.000Z (about 12 years ago)
- Default Branch: master
- Last Pushed: 2018-03-03T16:17:52.000Z (over 7 years ago)
- Last Synced: 2025-04-10T07:01:55.864Z (6 months ago)
- Language: Python
- Size: 117 KB
- Stars: 4
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.rst
- Changelog: CHANGES.txt
- License: LICENSE.txt
Awesome Lists containing this project
README
django-response-timeout
============================.. image:: https://pypip.in/v/django-response-timeout/badge.png
:target: https://crate.io/packages/django-response-timeout.. image:: https://travis-ci.org/saulshanabrook/django-response-timeout.png
:target: https://travis-ci.org/saulshanabrook/django-response-timeout``django-response-timeout`` allows you to set the cache time globally for
all responses. It provides a way to override the client side cache time for
the Django `per site`_ caching middleware... _per site: https://docs.djangoproject.com/en/dev/topics/cache/#the-per-site-cache
Installation
------------
Installation is as easy as::pip install django-response-timeout
Setup
-----
Add ``response_timeout.middleware.SetCacheTimeoutMiddleware`` and place it
after ``django.middleware.cache.UpdateCacheMiddleware`` so that it will set the
header time first on cached responses... code-block:: python
MIDDLEWARE_CLASSES = (
'django.middleware.cache.UpdateCacheMiddleware',
'response_timeout.middleware.SetCacheTimeoutMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.cache.FetchFromCacheMiddleware',
)Then set ``RESPONSE_CACHE_SECONDS`` to the number of seconds each page should
be cached on the front end.The Django documention does not cohesively describe how your middleware
should be ordered, however `this stackoverflow`_ discussion does a fine job... _this stackoverflow: http://stackoverflow.com/questions/4632323/practical-rules-for-django-middleware-ordering#question
Contributing
------------If you find issues or would like to see a feature suppored, head over to
the `issues section` and report it. Don't be agraid, go ahead, do it!.. _issues section: https://github.com/saulshanabrook/django-response-timeout/issues
To contribute code in any form, fork the repository and clone it locally.
Create a new branch for your feature::git commit -b feature/whatever-you-like
Then make sure all the tests past (and write new ones for any new features)::
pip install -e .
pip install -r requirements-dev.txt
django-admin.py test --settings=test.settingsCheck if the README.rst looks right::
restview --long-description
Then push the finished feature to github and open a pull request form the branch.
New Release
^^^^^^^^^^^
To create a new release:1. Add changes to ``CHANGES.txt``
2. Change version in ``setup.py``
3. ``python setup.py register``
4. ``python setup.py sdist upload``