django - 如何在 Django 中删除缓存的模板片段?

标签 django django-cache python-memcached

以前,我在我的 Django 模板中设置了一个缓存的 HTML block ,如下所示。

{% load cache %}            
    {% cache 10000 courseTable %} <!-- Cached HTML --> {% endcache %}

现在,我已经更新了这个缓存的内容并想要刷新它。我尝试更改时间无济于事:
{% load cache %}            
    {% cache 0 courseTable %} <!-- Updated Cached HTML --> {% endcache %}

在这种情况下,页面仍然显示旧的缓存 HTML。

我还尝试删除与缓存相关的模板标签并重新插入它们。但是,在这种情况下,内容只是在我重新插入缓存模板标签后恢复为最初缓存的内容。

我能做些什么?我不想等待大约 2 小时来重新加载我的缓存。

最佳答案

如果您有能力完全清空 memcached,请运行 flush_all cmd 或者干脆

from django.core.cache import cache
cache.clear()

否则你必须 generate the cache-key manually . timeout在 key 过期之前不会刷新。

关于django - 如何在 Django 中删除缓存的模板片段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10778988/

相关文章:

mysql - 将sql查询转换为django ORM函数调用

python - 如何在 Django 管理 ListView 中只显示一个对象?

memcached - 如何找到从内存缓存中驱逐的键?

django - 在 Django 中动态删除内联表单集

Django-select2 抛出 'Results cannot be loaded.'

django 缓存 REST API Urls 问题

python - 如何在 View 中使用Django缓存而不缓存所有页面

python - 查询python memcached数据

Python 内存缓存 : caching objects

python - django模型默认=""和 "This field cannot be blank"