有没有办法在django的静态资源末尾附加etag

时间:2010-01-04 15:45:59

标签: python django

在rails中,如果我导入css文件或javascript文件,则网址将如下

<script type="text/javascript" src="some.js?<ETag here>"></script>

如果我升级some.js,etag将被更改,因此我的浏览器可以智能地缓存静态资源并在必要时更新缓存。

有没有办法在django中做到这一点?

2 个答案:

答案 0 :(得分:1)

也许django-static可以帮助你......

  

django_static是一款Django应用,支持各种模板标记,可以更好地为您的静态内容提供服务。它基本上重写了对静态文件的引用,并且在适用的情况下,它会对内容进行空白优化。

     

通过引用唯一的静态内容(名称中包含时间戳),您可以非常积极地使用缓存控制设置,而无需担心升级代码并担心使用旧版本的访问者。

正如<jldupont>指出的那样,此解决方案是一个与HTTP ETags无关的解决方案。

答案 1 :(得分:0)

除了MYYN提到的django-static之外,这些项目将满足您的需求,并且还包含其他非常有用的功能,如压缩和连接:

django-compress

django_compressor