= Como adicionar variaveis ao contexto = Há outras formas de se adicionar variáveis ao contexto, mas usar Template Context Processors (TCPs) é a forma mais simples e adequada para se fazer isso. Veja como fazer: 1. Crie um módulo Python chamado '''context.py''' na pasta do projeto (o nome e o caminho são segundo o seu gosto, este é apenas um exemplo) com o seguinte conteúdo: {{{ from django.conf import settings def context_processors(request): ret = {} ret['settings'] = settings ret['variavel_da_sessao'] = request.session.get('variavel_da_sessao') return ret }}} 2. Declare o módulo criado na setting TEMPLATE_CONTEXT_PROCESSORS do arquivo settings.py {{{ TEMPLATE_CONTEXT_PROCESSORS = ( "django.core.context_processors.auth", "django.core.context_processors.debug", "django.core.context_processors.i18n", "django.core.context_processors.media", "meu_projeto.context.context_processors", ) }}} Projetos novos não possuem a setting TEMPLATE_CONTEXT_PROCESSORS declarada por padrão. Porém, não a declare sem seus valores padrão (veja em http://www.djangoproject.com/documentation/settings/#template-context-processors ). Pronto. Agora você pode utilizar as variáveis '''settings''' e '''variavel_da_sessao''' em templates sem precisar declará-las todas as vezes. === Observação importante: === Os TCPs somente funcionam para response que o usem por padrão. Os contribs padrão do framework utilizam-no, o '''HttpResponse''' e similares também, mas para utilizá-lo com '''render_to_response''' é necessário adicionar sempre o parâmetro '''context_instance''', como no exemplo abaixo: {{{ from django.template import RequestContext from django.shortcuts import render_to_response def minha_view(request): return render_to_response( 'videos/index.html', locals(), context_instance=RequestContext(request), ) }}} O snippet em http://www.djangosnippets.org/snippets/821/ aponta uma forma ainda mais simples utilizar render_to_response sem que seja necessário sempre acrescentar a declaração de '''context_instance'''.