РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
74 of 643 menu

Атрибут url_root

Атрибут url_root класса Request хранит корневую часть URL, по которой пришёл запрос. В отличие от url, атрибут url_root не включает путь и параметры запроса. Значение формируется из схемы, хоста и порта, а также корня приложения, если оно размещено не в корне домена.

Атрибут доступен через объект request внутри функции-обработчика. Он возвращает строку, например 'http://localhost/' или 'https://example.com/app/'. Удобно применять его для построения абсолютных ссылок или при отладке.

Синтаксис

request.url_root

Пример

Давайте выведем значение атрибута url_root в ответ на запрос:

from flask import Flask, request app = Flask(__name__) @app.route('/') def index(): return request.url_root

Результат выполнения кода для адреса http://localhost:5000/:

http://localhost:5000/

Пример

Давайте сравним атрибуты url и url_root для запроса с путём:

from flask import Flask, request app = Flask(__name__) @app.route('/user/abcde') def user(): return { 'url': request.url, 'url_root': request.url_root }

Результат выполнения кода для адреса http://localhost:5000/user/abcde:

{'url': 'http://localhost:5000/user/abcde', 'url_root': 'http://localhost:5000/'}

Пример

Давайте используем url_root для построения абсолютной ссылки на статический файл:

from flask import Flask, request, render_template app = Flask(__name__) @app.route('/') def index(): link = request.url_root + 'static/style.css' return render_template('index.html', link=link)
<p>{{ link }}</p>

Результат выполнения кода для адреса http://localhost:5000/:

<p>http://localhost:5000/static/style.css</p>

Смотрите также

  • класс Request,
    который представляет HTTP-запрос
  • атрибут url,
    который возвращает полный URL запроса
  • атрибут base_url,
    который возвращает URL без параметров запроса
  • атрибут script_root,
    который возвращает корень приложения
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить