首页 > 解决方案 > Django Cache - 模型更改时更新

问题描述

我似乎找不到任何关于如何做到这一点的教程。

所以,我基本上想在我的 Django 项目中添加缓存。我做了一个博客视图,只有在模型自上次缓存后发生更改时才应该缓存和更新。

我该怎么做呢?

标签: djangodjango-cachedjango-caching

解决方案


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

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

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


推荐阅读