Параметры для FilterView из перенаправления шаблона

Я прочитал все похожие Q&As, но не могу понять, как добиться желаемого.

В моем файле base.html есть выпадающее меню, основанное на годах обучения:

    <div class="dropdown">
      <a href="#" class="d-flex align-items-center text-white text-decoration-none dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
        <svg class="bi pe-none me-2" width="16" height="16"><use xlink:href="#archive"/></svg>
        <strong>Select Year</strong>
      </a>
      <ul class="dropdown-menu dropdown-menu-dark text-small shadow">
        {% for year in years %}
                          <li><a class="dropdown-item"href="{% url 'administration.home_selected' year %}">{{year}}</a></li>
                          {% endfor %}

      </ul>
    </div>

administration.home_selected - это представление, основанное на функции и принимающее параметр year, чтобы показать нужные данные, относящиеся к этому учебному году:

url.py

path(
        "home_selected/<int:year>",
        views.home_selected,
        name="administration.home_selected",
    ),

Как мне воспроизвести ту же функциональность, когда навигационная вкладка в файле home_selected.html выбрана и относится к FilterView:

    path(
        "learners/<int:year>",
        views.FilteredLearnerListView.as_view(),
        name="administration.learners",
    ),

В настоящее время представление кодируется для отображения только данных текущего года, но я хотел бы иметь возможность сделать то же самое, что я сделал с представлением на основе функций, чтобы показать правильные данные в зависимости от года, выбранного из base.html

views.py

class FilteredLearnerListView(SingleTableMixin, FilterView):
    table_class = LearnerTable
    model = Learner
    context_object_name = "learner_list"

    current = AcademicYear.objects.filter(is_current=True).get()
    contracts_list = Contract.objects.filter(academic_year=current).values_list(
        "id", flat=True
    )
    contracts_list = list(contracts_list)
    contracts = Contract.objects.filter(academic_year=current).values()
    groups = Group.objects.filter(contractId__in=contracts_list)
    queryset = Learner.objects.filter(groupId__in=groups)
    template_name = "learner_list.html"

    filterset_class = LearnerFilter

filters.py

class LearnerFilter(FilterSet):
    class Meta:
        model = Learner
        fields = {"surname": ["iexact"], "groupId": ["exact"]}

Пожалуйста, простите за ошибки новичков. Я очень хочу научиться.

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