terça-feira, 14 de agosto de 2012

Forçando atualizações contra vontade do Pagespeed


O PageSpeed, ferramenta muito útil que compacta e une arquivos estáticos( css, js, etc) às vezes atrapalha um pouco durante o desenvolvimento.

Depois de alguma alteração, e o envio da mesma no servidor, o antigo arquivo ainda é executado, devido ao cache desta ferramenta.

Para isso basta utilizar o filtro abaixo:



import os
from django import template
from django.utils import version
from django.conf import settings

register = template.Library()

@register.simple_tag
def revision_number():
    rev = version.get_svn_revision(settings.STATIC_PATH)
    return rev.split('-')[1]
Lembre-se de configurar o STATIC_PATH para o caminho de seus arquivos estáticos no settings.py.

E no html onde fizer a requisição do arquivo adcionar um parâmetro por GET para forçar uma nova atualização:
<script type="text/javascript" src="/static/site/js/js_all.js?v={% revision_number %}"></script>

<link rel="stylesheet" type="text/css" href="/static/site/style.css?v={% revision_number %}" media="all" />


hasta!

Nenhum comentário:

Postar um comentário