gpt4 book ai didi

django - 如何使 Django 中的 cache_page 无效?

转载 作者:行者123 更新时间:2023-12-04 15:55:58 24 4
gpt4 key购买 nike

问题是:我有博客应用程序,我将帖子输出 View 缓存了 5 分钟。

@cache_page(60 * 5)
def article(request, slug):
...

但是,每当向帖子添加新评论时,我都想使缓存无效。
我想知道如何最好地这样做?

我见过 this相关问题,但它已经过时了。

最佳答案

我会以不同的方式缓存:

def article(request, slug):
cached_article = cache.get('article_%s' % slug)
if not cached_article:
cached_article = Article.objects.get(slug=slug)
cache.set('article_%s' % slug, cached_article, 60*5)

return render(request, 'article/detail.html', {'article':cached_article})

然后将新评论保存到此文章对象:
# ...
# add the new comment to this article object, then
if cache.get('article_%s' % article.slug):
cache.delete('article_%s' % article.slug)
# ...

关于django - 如何使 Django 中的 cache_page 无效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33749369/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com