From d19fae0e1b6c3b4ea84c4787b5ad2e7e809b3e20 Mon Sep 17 00:00:00 2001 From: Horilla Date: Fri, 16 Feb 2024 10:32:54 +0530 Subject: [PATCH] [UPDT] GENERAL: Dynamic Grouper Include related queryset --- attendance/methods/group_by.py | 3 +++ recruitment/pipeline_grouper.py | 3 +++ 2 files changed, 6 insertions(+) diff --git a/attendance/methods/group_by.py b/attendance/methods/group_by.py index 921815f7f..29cb91ce5 100644 --- a/attendance/methods/group_by.py +++ b/attendance/methods/group_by.py @@ -110,6 +110,9 @@ def group_by_queryset( for index, item in enumerate(queryset.values_list(group_field, flat=True)) if item not in queryset.values_list(group_field, flat=True)[:index] ] + # getting related queryset + related_model = queryset.model._meta.get_field(group_field).related_model + groupers = related_model.objects.filter(id__in=groupers) groups = generate_groups( request, groupers, queryset, page_name, group_field, is_fk_field=False ) diff --git a/recruitment/pipeline_grouper.py b/recruitment/pipeline_grouper.py index c38837f90..f31c02177 100644 --- a/recruitment/pipeline_grouper.py +++ b/recruitment/pipeline_grouper.py @@ -114,5 +114,8 @@ def group_by_queryset( request, groupers, queryset, page_name, group_field, is_fk_field=False ) + # getting related queryset + related_model = queryset.model._meta.get_field(group_field).related_model + groupers = related_model.objects.filter(id__in=groupers) groups = Paginator(groups, records_per_page) return groups.get_page(page)