django-crequest
django-crequest copied to clipboard
django-crequest - Taking care of current request in silent way.
=============== django-crequest
.. contents::
Overview
crequesttakes care of currentrequestin silent way.crequestwill bring you currentrequestobject of your Django application from anywhere in your code.
Installing
django-crequest is available on http://pypi.python.org/pypi/django-crequest
So it can be installed it by pip::
$ python pip install django-crequest
Or you can grab the latest version tarball and ::
$ python setup.py install
To enable django-crequest in your project
- Add
crequestto INSTALLED_APPS in your settings.py - Add
crequest.middleware.CrequestMiddlewaretoMIDDLEWARE_CLASSESafter the authentication and session middleware.
Supported Python versions
django-crequest currently can be run on multiple python versions:
- Python 2
- Python 3
- PyPy
How to use
First import the crequest's middleware::
from crequest.middleware import CrequestMiddleware
Get the current request ;)::
current_request = CrequestMiddleware.get_request()
Done.
In depth & Complex details
Set the current request in UnKnown situations::
CrequestMiddleware.set_request(request)
Return iam_request if there is no current request::
CrequestMiddleware.get_request(iam_request)
And finally delete::
CrequestMiddleware.del_request()
The middleware automatically sets/deletes the current request for HTTP requests. For other uses (management commands, scripts), you will need to do this yourself.