Skip to main content

Django cache tools originally developed for Ella CMS

Project description

Django cache tools originally developed for Ella CMS. It contains few helpful caching tools (such as cached ForeignKey, functions for caching object/objects, decorator for caching function/method, etc.)

Usage for models

In models.py you can use CachedForeignKey:

from __future__ import unicode_literals
from django.db import models
from cache_tools.fields import CachedForeignKey


@python_2_unicode_compatible
class Question(models.Model):
    question_text = models.CharField(max_length=200)
    pub_date = models.DateTimeField('date published')

    def __str__(self):
        return self.question_text


@python_2_unicode_compatible
class Choice(models.Model):
    question = CachedForeignKey(Question, on_delete=models.CASCADE)
    choice_text = models.CharField(max_length=200)
    votes = models.IntegerField(default=0)

    def __str__(self):
        return self.choice_text

Usage for caching function

In whatever.py you can use cache_this:

from cache_tools.utils import cache_this
from .models import Question


@cache_this(lambda *args, **kwargs: 'my_app_all_questions_cache_key')
def get_all_guestions():
    return list(Question.objects.all().order_by('pk'))

Build status

Master branch:
Travis CI - Distributed build platform for the open source community

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dj-cache-tools-0.6.3.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

dj_cache_tools-0.6.3-py2.py3-none-any.whl (8.1 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file dj-cache-tools-0.6.3.tar.gz.

File metadata

File hashes

Hashes for dj-cache-tools-0.6.3.tar.gz
Algorithm Hash digest
SHA256 d7974c4a92bfc858db8f066363ce0d43b7a88cf7582627b256f6d1e2177031d9
MD5 45166d01a6e09f254c500cf400aab5ae
BLAKE2b-256 8d001429cdc663607a7e69a6be12aa5cc41ef1750e976ceb5c480da14e571e93

See more details on using hashes here.

File details

Details for the file dj_cache_tools-0.6.3-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for dj_cache_tools-0.6.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 440fc9459eddf63776f63d104d51740da5d45e6f1e602826f723a181c289ee8a
MD5 b72cb9621c74b224cb74bb9a174fa677
BLAKE2b-256 f50a248a75dd58c0455ebd6130624bf21ec04132d5e4c27c6b02e7457829a7f3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page