如何在django视图中禁用缓存?

时间:2015-03-27 15:52:40

标签: python django caching

每当我修改django视图或静态文件时,我重新加载页面时仍可能无法更新。

例如,

def index(request):
    print 'first'
    return httpResponse('ok')

django服务器日志返回'first'

但修改后

def index(request):
    print 'second'
    return httpResponse('ok')

django可能仍然会返回'first',而不是'second'。

我找到了一些禁用缓存的方法

例如,

from django.views.decorators.cache import never_cache

@never_cache
def index(request):
    print 'second'
    return httpResponse('ok')

但它不起作用。

如何在开发模式下避免此问题?

谢谢!

3 个答案:

答案 0 :(得分:0)

这与缓存无关。您的devserver由于某种原因未检测到更改,因此未重新启动;只需执行ctrl-c并手动重新运行。

答案 1 :(得分:0)

Chrome 中,转到您的浏览器设置,您可以Disable cache。这是设置>下的第一个选项一般

答案 2 :(得分:0)

Hm,Django dev服务器检测启动时加载的.py文件的变化。你能尝试添加

吗?
from your_app import index

例如在你的urls.py中,只是为了确保模块已加载。

然后修改索引代码。

你的devserver应该重启。

如果重新启动,您的修改将被考虑在内,您的打印应该没问题