Django 缓存 - 模型更改时更新

Myz*_*394 3 django django-cache django-caching

我似乎找不到任何关于如何执行此操作的教程。

所以,我基本上想向我的 Django 项目添加缓存。我创建了一个博客视图,仅当模型自上次缓存以来发生更改时才应该缓存和更新。

我该怎么做呢?

EdC*_*ejo 6

您可以在使用信号保存后信号创建或更新对象后清除缓存

from django.db.models.signals import post_save
from django.dispatch import receiver

class Entry(models.Model):
    content = models.TextField()

# method for updating after entry save data
@receiver(post_save, sender=Entry)
def clear_cache(sender, instance, **kwargs):
    # call cache clear here
Run Code Online (Sandbox Code Playgroud)

另一种选择是重载模型的 save 方法,并在保存后调用清除缓存