11 марта 2009 г.

Контекстные процессоры Django

Как пишет django book

Для обработки шаблона вам необходим контекст. Обычно это экземпляр django.template.Context, но в поставку Django также входит специальный подкласс — django.template.RequestContext, который работает немного иначе. Класс RequestContext по умолчанию добавляет группу переменных в контекст шаблона - такие как объект HttpRequest или информацию о текущем пользователе.


Класс RequestContext и контекстные процессоры были созданы для решения этой задачи. Контекстные процессоры позволяют вам указывать ряд переменных, которые будут устанавливаться автоматически для каждого контекста, без необходимости их указания в каждом вызове render_to_response(). Надо лишь использовать RequestContext вместо Context при обработке шаблона.


То есть, собственно говоря, для чего на нужны контекстные процессоры?
Контекстный процессор принимает объект HttpRequest и возвращает словарь переменных для его последующего использования в контексте шаблона.
То есть, для поставленной перед собой задачи - вывод дополнительной информации в любых шаблонах он справляется.

В django книге описано, как создавать свои глобальные процессоры.

Есть еще варианты - http://softwaremaniacs.org/forum/django/1439/

Комментариев нет:

Отправить комментарий