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

Атрибут script_root

Атрибут script_root применяется к объекту запроса request и возвращает корневой путь приложения в виде строки. В отличие от root_path, который указывает на файловую систему, script_root возвращает URL-префикс, под которым смонтировано приложение. Если приложение развёрнуто в корне домена, значение будет пустой строкой. Если приложение размещено в подкаталоге, например /myapp, то script_root вернёт этот префикс.

Синтаксис

request.script_root

Пример

Давайте выведем значение script_root для запроса к корню приложения:

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

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

""

Пример

Давайте сравним script_root и root_path, чтобы увидеть разницу между URL-префиксом и путём в файловой системе:

from flask import Flask, request app = Flask(__name__) @app.route('/user') def user(): res = { 'script_root': request.script_root, 'root_path': request.root_path, } return res

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

{'script_root': '', 'root_path': '/home/user/project'}

Пример

Давайте используем script_root для построения абсолютного URL вручную:

from flask import Flask, request app = Flask(__name__) @app.route('/article') def article(): base = request.host_url.rstrip('/') + request.script_root return base + '/user'

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

"http://localhost:5000/user"

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

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