Skip to main content
Donate to the Python Software Foundation or Purchase a PyCharm License to Benefit the PSF! Donate Now

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.

Filename, size & hash SHA256 hash help File type Python version Upload date
dj_cache_tools-0.6.3-py2.py3-none-any.whl (8.1 kB) Copy SHA256 hash SHA256 Wheel 2.7
dj-cache-tools-0.6.3.tar.gz (5.8 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page