Как я могу получить доменное имя моего сайта в шаблоне Django? - PullRequest
138 голосов
/ 20 сентября 2009

Как мне получить доменное имя моего текущего сайта из шаблона Django? Я пробовал искать теги и фильтры, но там ничего нет.

Ответы [ 14 ]

0 голосов
/ 04 апреля 2019

В шаблоне Django вы можете сделать:

<a href="{{ request.scheme }}://{{ request.META.HTTP_HOST }}{{ request.path }}?{{ request.GET.urlencode }}" >link</a>
0 голосов
/ 04 апреля 2018

А как насчет этого подхода? Работает для меня. Он также используется в django-регистрация .

def get_request_root_url(self):
    scheme = 'https' if self.request.is_secure() else 'http'
    site = get_current_site(self.request)
    return '%s://%s' % (scheme, site)
0 голосов
/ 09 ноября 2014
from django.contrib.sites.models import Site
if Site._meta.installed:
    site = Site.objects.get_current()
else:
    site = RequestSite(request)
0 голосов
/ 20 мая 2014

Вы можете использовать {{ protocol }}://{{ domain }} в своих шаблонах для получения вашего доменного имени.

...