Как передать измельченные данные из URL в Django?

У меня есть проект со следующим urls.py.

urlpatterns = [
    path('category*/', include('student.urls')) // * could be replaced by a number
]

В этом проекте у меня есть приложение-студент, urls.py которого выглядит следующим образом:

urlpatterns = [
    path('all/', views.all, name='all')
]

Допустим, когда я ввожу URL category1/all/, я получаю список всех студентов категории 1, но когда я делаю category2/all/, я должен получить список всех студентов категории 2. Таким образом, когда я дохожу до all/, я теряю информацию о том, для какой категории я хочу получить список всех студентов. Как я могу узнать в приложении для студентов, данные о студентах какой категории должны быть получены?

Вы можете работать с параметром:

urlpatterns = [
    path('category<int:cat>/', include('student.urls')),
]

тогда представление all принимает этот параметр:

def all(request, cat):
    # …
    pass

, где cat является, таким образом, int в зависимости от номера в пути.

Вернуться на верх