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

resolve

Функция resolve применяется к строке URL-пути и возвращает объект ResolverMatch, содержащий информацию о представлении, которое будет вызвано для этого пути, а также переданные параметры и пространство имён. Это полезно для динамического анализа URL-адресов и отладки маршрутов. Функция принимает один обязательный аргумент - путь в виде строки, и один необязательный аргумент - словарь дополнительных настроек URL-конфигурации.

Синтаксис

from django.urls import resolve res = resolve(path, urlconf=None)

Пример

Давайте разрешим URL-путь для главной страницы блога:

from django.urls import resolve res = resolve('/blog/') print(res)

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

"ResolverMatch(func=blog.views.index, args=(), kwargs={}, url_name=index, app_names=[], namespaces=[], route='blog/')"

Пример

Разрешим путь с параметром и получим отдельные части:

from django.urls import resolve res = resolve('/article/42/') print(res.func) print(res.kwargs) print(res.url_name)

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

"<function article_detail at 0x7f8a1c2d3e10>" "{'id': 42}" "article_detail"

Пример

Обработаем ситуацию, когда путь не соответствует ни одному маршруту:

from django.urls import resolve from django.urls.exceptions import Resolver404 try: res = resolve('/unknown/path/') except Resolver404: print('The path does not match any URL pattern')

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

"The path does not match any URL pattern"

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

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