Metadata-Version: 2.1
Name: django-context-cache
Version: 0.0.2
Summary: Django context cache library.
Home-page: https://github.com/druids/django-context-cache
Author: Lubos Matl
Author-email: matllubos@gmail.com
License: MIT
Description: 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:
        
        ```bash
        pip install django-context-cache
        ```
        
        - Add `'context_cache.middleware.ContextCacheMiddleware'` to your `MIDDLEWARE`:
        
        ```python
        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
        
Keywords: django,cache,request cache
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: Czech
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Internet :: WWW/HTTP :: Site Management
Description-Content-Type: text/markdown
