Как использовать параметры в представлении класса и url?
Я хочу получить параметр из шаблона. Но когда я это делаю, выдается ошибка:
TypeError at /report/2000-01-01/2022-08-12/Investigations/ wrapper_func() отсутствует 1 необходимый позиционный аргумент: 'request'
Он принимает параметры true, но я думаю, что не могу передать их в представления. Как я могу это сделать?
views.py
class GroupingReportsPage(ReportsMixin, ListView):
model = ProcessType
def case_groups(date_1, date_2, process_group):
fieldname = 'case_type_value'
cases = Case.objects.filter(date_created__range=[date_1, date_2])
process_types = ProcessType.objects.filter(reporting_group__option=process_group)
report_group = {}
print('cases')
print('cases')
print(cases)
print(process_types)
return cases
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
print('sadasds')
self.case_groups()
context['query_trend'] = 'query_trend'
return context
urls.py
path('report/<str:date_1>/<str:date_2>/<str:process_group>/', report.GroupingReportsPage.as_view(), name='process_groups'),
шаблон
<a href="{% url 'fdm:process_groups' date_1 date_2 index %}" style="color: black">
{{index}}
</a>
Я не уверен, но это, вероятно, вызвано отсутствием self
параметра в пользовательском методе (который не является статическим).
Изменить это:
def case_groups(date_1, date_2, process_group):
К этому:
@staticmethod
def case_groups(date_1, date_2, process_group):
def get_context_data(self, request, **kwargs):
Попробуйте изменить объявление вашей функции, чтобы включить request
параметр.