Весь смысл процессоров контекста заключается в том, что они автоматически добавляют элементы в контекст. Таким образом, вы можете просто использовать {{ request.host }}
или что-то еще в шаблоне.
Редактировать после комментария Нет, это не имеет ничего общего с общими представлениями. Общие представления действуют точно так же, как ваши собственные представления, которые используют RequestContext, как показано выше. Если вы хотите сделать объект request
доступным автоматически в ваших представлениях, все, что вам нужно сделать, это добавить код ниже к вашим настройкам.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
один добавил.)
Но это только в обобщенном зрения права? Я использую render_to_response, и он ничего не показывает на html. Я думаю, мне нужно определить что-то вроде TEMPLATE_CONTEXT_PROCESSORS с функциями и т. Д., Но это выглядит сложным, и я ищу быстрое, простое и стандартное решение. –
ok, found это спасибо –