Вам нужно добавить django.core.context_processors.request
в контекстные процессоры шаблонов . Затем вы можете получить к ним доступ следующим образом:
{{ request.session.name }}
Если вы используете пользовательские представления, убедитесь, что вы передаете экземпляр RequestContext. Пример, взятый из документации :
from django.shortcuts import render_to_response
from django.template import RequestContext
def some_view(request):
# ...
return render_to_response('my_template.html',
my_data_dictionary,
context_instance=RequestContext(request))
Обновление 2013: судя по upvotes, я все еще получаю за этот ответ, люди все еще считают это полезным, более трех лет спустя он был изначально написан. Обратите внимание, однако, что хотя приведенный выше код обзора по-прежнему действителен, в настоящее время существует гораздо более простой способ сделать это. render()
- это функция, очень похожая на render_to_response()
, но она автоматически использует RequestContext
, без необходимости передавать ее явно:
from django.shortcuts import render
def some_view(request):
# ...
return render(request, 'my_template.html', my_data_dictionary)
Существует конфигурация DTD, которую необходимо включить.
пример:
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.2//EN"
"http://www.puppycrawl.com/dtds/configuration_1_2.dtd">
Это скажет вам, какие модули вы можете использовать для создания правильного контрольного стиля XML.