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

Класс RedirectView

Класс RedirectView применяется для обработки запросов, которые должны быть перенаправлены на другой URL. В зависимости от настроек, перенаправление может быть временным (код 302) или постоянным (код 301). Класс позволяет задавать целевой URL как статически, так и динамически, используя параметры из запроса или регулярные выражения.

Основные атрибуты класса: url - целевой URL для перенаправления, permanent - флаг постоянного перенаправления, query_string - сохранять ли строку запроса при перенаправлении.

Синтаксис

from django.views.generic.base import RedirectView class MyRedirectView(RedirectView): url = "/new-url/" permanent = True query_string = False

Пример

Давайте создадим простое перенаправление с одного адреса на другой:

from django.views.generic.base import RedirectView from django.urls import path class HomeRedirectView(RedirectView): url = "/new-home/" urlpatterns = [ path("old-home/", HomeRedirectView.as_view(), name="old-home"), ]

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

"Redirecting to /new-home/"

Пример

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

from django.views.generic.base import RedirectView from django.urls import path class DynamicRedirectView(RedirectView): url = "/new-section/%(section)s/" urlpatterns = [ path("old-section/<str:section>/", DynamicRedirectView.as_view(), name="old-section"), ]

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

"Redirecting to /new-section/news/"

Пример

Давайте создадим постоянное перенаправление с сохранением строки запроса:

from django.views.generic.base import RedirectView from django.urls import path class PermanentRedirectView(RedirectView): url = "/new-page/" permanent = True query_string = True urlpatterns = [ path("old-page/", PermanentRedirectView.as_view(), name="old-page"), ]

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

"Redirecting permanently to /new-page/?param=value"

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

  • класс url,
    который задает целевой URL для перенаправления
  • класс permanent,
    который определяет тип перенаправления
  • класс redirect,
    который выполняет перенаправление на указанный URL
  • класс reverse,
    который генерирует URL по имени маршрута
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить