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

Метод match класса Router

Метод match применяется к объекту Router и выполняет поиск подходящего маршрута для переданного окружения. Первым параметром передаётся словарь окружения environ, содержащий информацию о запросе. Метод возвращает кортеж из целевого обработчика и словаря с параметрами маршрута. Если подходящий маршрут не найден, возвращается None вместо обработчика.

Синтаксис

router.match(environ)

Пример

Давайте создадим маршрутизатор, добавим маршрут и выполним сопоставление с окружением:

from bottle import Router router = Router() router.add('/user/<name>', 'GET', lambda name: name, name='user') environ = { 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/user/abcde' } res = router.match(environ) print(res)

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

(<function <lambda> at 0x...>, {'name': 'abcde'})

Пример

Давайте проверим поведение метода, когда маршрут не найден:

from bottle import Router router = Router() router.add('/user/<name>', 'GET', lambda name: name, name='user') environ = { 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/article' } res = router.match(environ) print(res)

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

(None, {})

Пример

Давайте используем метод match вместе с приложением Bottle и посмотрим, как маршрутизатор находит обработчик:

from bottle import Bottle app = Bottle() @app.route('/hello') def hello(): return 'hello' environ = { 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/hello' } res = app.router.match(environ) print(res[0]())

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

"hello"

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

  • класс Router,
    который управляет маршрутами приложения
  • метод add,
    который регистрирует новый маршрут
  • метод build,
    который строит URL по имени маршрута
  • метод add_filter,
    который добавляет фильтр для маршрутов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить