Socket
Book a DemoInstallSign in
Socket

django-request-cache

Package Overview
Dependencies
Maintainers
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

django-request-cache

A simple Django app that provides a per-request cache.

1.5.0
pipPyPI
Maintainers
2

==================== Django Request Cache

.. image:: https://badge.fury.io/py/django-request-cache.svg :target: https://badge.fury.io/py/django-request-cache .. image:: https://github.com/anexia/django-request-cache/actions/workflows/test.yml/badge.svg?branch=main :target: https://github.com/anexia/django-request-cache/actions/workflows/test.yml .. image:: https://codecov.io/gh/anexia/django-request-cache/branch/main/graph/badge.svg :target: https://codecov.io/gh/anexia/django-request-cache

Django Request Cache provides a cache for each request (within your Django Request/Response cycle).

Quick start

  • Download and install using pip install

.. code-block:: bash

pip install django-request-cache

2. Add UserForeignKeyMiddleware and RequestCacheMiddleware to your MIDDLEWARE settings like this:

.. code-block:: python

MIDDLEWARE = (
    ...
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    ...
    'django_userforeignkey.middleware.UserForeignKeyMiddleware',
    'django_request_cache.middleware.RequestCacheMiddleware',
)

or if you are still using the an older Django version (e.g., Django 1.8) with MIDDLEWARE_CLASSES:

.. code-block:: python

MIDDLEWARE_CLASSES = (
    ...
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    ...
    'django_userforeignkey.middleware.UserForeignKeyMiddleware',
    'django_request_cache.middleware.RequestCacheMiddleware',
)

3. Use the per-request cache as a decorator

.. code-block:: python

from django_request_cache import cache_for_request

@cache_for_request
def do_some_complex_calculation(a, b, c):
    print("Calculating... please wait")
    return a * b * c

Try it out by executing do_some_complex_calculation multiple times within your request

Attribution

RequestCache and RequestCacheMiddleware (see middleware.py) are from a source code snippet on StackOverflow https://stackoverflow.com/questions/3151469/per-request-cache-in-django/37015573#37015573 created by coredumperror https://stackoverflow.com/users/464318/coredumperror Original Question was posted by https://stackoverflow.com/users/7679/chase-seibert at https://stackoverflow.com/questions/3151469/per-request-cache-in-django copied on 2017-Dec-20

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.