Подтвердить что ты не робот

Доступен ли текущий сайт из шаблона?

Я пытаюсь просто получить текущий Site из шаблона для синтаксического анализа так:

<h3>{{ site.name }}</h3>

К сожалению, это ничего не приносит.

Есть ли способ получить доступ к текущему сайту из шаблона?

4b9b3361

Ответ 1

В названии вашего вопроса предполагается, что "вид" и "шаблон" взаимозаменяемы - это не так. Чтобы получить текущий сайт в шаблоне, его нужно добавить в контекст, который используется для визуализации шаблона. Если вы используете RequestContext, вы можете написать обработчик контекста, чтобы сделать это автоматически.

Вы можете написать обработчик контекста, чтобы сделать это следующим образом:

from django.contrib.sites.models import Site

def site_processor(request):
    return { 'site': Site.objects.get_current() }

Затем добавьте его в TEMPLATE_CONTEXT_PROCESSORS и используйте его так:

<h3>{{ site.name }}</h3>

Ответ 2

Как ни странно, использование процессора bradleyayers дало результаты Null, поэтому вместо использования структуры сайта я использовал параметр внутри запроса.

Итак, процессор будет выглядеть так:

def host_processor(request):
    return { 'host': request.get_host() }

Надеюсь, что это помогло