Skip to main content

Prolog

Django-context-cache extends the Django framework with a context cache that caches data per request or per decorated block.

Installation

  • Install django-context-cache with the pip command:
pip install django-context-cache
  • Add 'context_cache.middleware.ContextCacheMiddleware' to your MIDDLEWARE:
MIDDLEWARE = [
    'context_cache.middleware.ContextCacheMiddleware',
    ...
]

Usage

Imagine having an function or method which result you want to cache per request:

import random
import string
from context_cache.decorators import cache_for_context

@cache_for_context
def get_random_string():
    letters = string.ascii_lowercase
    return ''.join(random.choice(letters) for i in range(10))

If you call function get_random_string more times the value will be get from cache:

def view(request):
    get_random_string() == get_random_string() # should return True

If you want to cache an function out of requests, for example in the django command you can use the decorator init_context_cache. The decorator can be used as a context processor too:

from django.core.management.base import BaseCommand, CommandError
from context_cache.decorators import init_context_cache

class Command(BaseCommand):
    
    @init_context_cache
    def handle(self, *args, **options):
        get_random_string() == get_random_string() # should return True

Metadata

Release files for django-context-cache 0.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-context-cache 0.0.2
File Size Uploaded Provenance
django-context-cache-0.0.2.tar.gz 7.6 kB Without provenance Details

Release files / django-context-cache-0.0.2.tar.gz

Download URL django-context-cache-0.0.2.tar.gz
Size 7.6 kB
Tags Source
SHA-256 checksum
How to use checksums
55db3d85698a5ef053b6e4aaf01cd1e2d84958411c684b41041f0b97c03637da
BLAKE2b-256 checksum
How to use checksums
7eef2cf5a09a965df797969cfd7d4a50937ee47ea68bee8d4d225688104ca28c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.3

Security for django-context-cache 0.0.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.0.2 This release

1 release file No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page