Как использовать context_instance в моем шаблоне - PullRequest
1 голос
/ 02 августа 2010

Джанго новичок здесь, я использую

render_to_response('example.html', {
        'error_message': error_message,
        }, context_instance=RequestContext(request))

Как использовать запрос в шаблоне? (например, request.host и т. д.)

1 Ответ

2 голосов
/ 02 августа 2010

Смысл контекстных процессоров в том, что они автоматически добавляют элементы в контекст. Таким образом, вы можете просто использовать {{ request.host }} или что-то прямо в шаблоне.

Редактировать после комментария Нет, это не имеет ничего общего с общими представлениями. Общие представления действуют точно так же, как ваши собственные представления, использующие RequestContext, как показано выше. Если вы хотите сделать объект request доступным автоматически в ваших представлениях, все, что вам нужно сделать, это добавить приведенный ниже код в файл settings.py - трудно понять, как это может быть быстрее.

TEMPLATE_CONTEXT_PROCESSORS = (
    "django.contrib.auth.context_processors.auth",
    "django.core.context_processors.debug",
    "django.core.context_processors.i18n",
    "django.core.context_processors.media",
    "django.contrib.messages.context_processors.messages",
    "django.core.context_processors.request"
)

(Это просто список контекстных процессоров по умолчанию, как описано в документации, с добавлением request.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...