Передача переменных в строке браузера django

Делаю поиск на странице с возможностью фильтрация. Надо передать выбранные поля для формирования правильного queryset. Как это лучше сделать? Я создаю переменную str в urls. Но то делать если надо передать 10 или больше условий фильрации? как организовать динамично передаваемые переменные?

urls

from django.urls import path
from .views import *

urlpatterns = [
    path('', OrdersHomeView.as_view(), name='orders_home'),
    path('filter/<str:tag>', OrdersFilterView.as_view(), name='orders_filter'),
]

понимаю, что надо делать через ?=, как в php, но не могу понять как? можно просто обрабатывать строку str, но может есть какая-то магия django?


Ответы (1 шт):

Автор решения: Andrew Holovko

Вот так должен выглядеть url в строке браузера: http://127.0.0.1:8000/orders_home?message=2

Фрагмент кода, которым можно доставать параметры, во view: message = request.GET.get('message')

Urls.py можно оставить без изменений:

urlpatterns = [
    path('orders_home', views.kek, name='orders_home')
]
→ Ссылка