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

Необязательные параметры маршрутов в Django

В Django у path нет синтаксиса вроде необязательного параметра в одной строке. Обычно делают два маршрута: с параметром и без него, а в представлении задают значение по умолчанию.

Пусть нужна страница постов с номером, но если номер не указан - показывать первую страницу:

urlpatterns = [ path('posts/', views.posts), path('posts/<int:page>/', views.posts), ]

Оба маршрута ведут в одно и то же представление. Если параметра в URL нет, сработает значение по умолчанию в аргументе функции:

from django.http import HttpResponse def posts(request, page=1): return HttpResponse('page ' + str(page))

Пусть дан адрес вида /city/:city/, где в параметре город. Сделайте так, чтобы город был необязательным и по умолчанию имел значение 'minsk'.

Сделайте страницу /page/ и /page/:num/. Без номера пусть выводится страница 1.

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