Как одновременно выводить на страницу/поиск/фильтр объекты. Параметры запроса [Django]
В моем html-шаблоне есть 3 различные формы: для фильтрации, поиска и постраничного просмотра результатов. Я хочу, чтобы была возможность делать это одновременно:
shop/?filter_by=diary_products&paginate_by=6
shop/search/?q=milk&filter_by=diary_products&paginate_by=6
 Проблема в том, что когда форма отправлена. Параметры запроса не добавляются, поэтому я не могу достичь вышеупомянутого результата.
 Форма поиска
<form action="{% url 'search_products' %}" method="GET">
    {% csrf_token %}
    <button type="submit">Search</button>
    <input type="text" name="q" placeholder="Search">
</form>
Форма выбора элементов на странице (пагинация)
<form action="{% what should i put here? %}" method="GET">
    <select name="paginate_by" onchange="this.form.submit()">
        <option selected>1</option>
        <option>2</option>
        <option>3</option>
    </select>
    <noscript><input type="submit" value="Submit"></noscript>
</form>
Форма фильтра
<form action="{% what should i put here? %}" method="GET">
    <select name="filter_by" onchange="this.form.submit()">
        <option selected>diary_products</option>
        <option>by_price</option>
        <option>newest_first</option>
    </select>
    <noscript><input type="submit" value="Submit"></noscript>
</form>
urls.py
from django.conf import settings
from django.conf.urls.static import static
from django.urls import path
from . import views
urlpatterns = [
    path('', views.shop, name='shop'),
    path('search/', views.search_products, name='search_products'),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)