viernes, 31 de agosto de 2007

Acceso al request desde template en Dango

Con su instalación por default, Django no permite acceder al request actual desde los templates, pero esto no es muy complicado de realizar.

Para soportar esto, la forma que más me gustó es a través de los "context processors". Configurando esto le indicamos a Django que injecte en el contexto del template una referencia al request actual.

Hay que agregar en settings.py:
TEMPLATE_CONTEXT_PROCESSORS += (
'django.core.context_processors.request',
)
y utilizar render_to_response de la siguiente manera:

from django.template import RequestContext

def view(request):
return render_to_response(
'path/to/template.html',
{},
context_instance=RequestContext(request)
)
y listo!

No hay comentarios: