From 9c9e9ca0539dcbd0defbbed318ced90e7d865324 Mon Sep 17 00:00:00 2001 From: Praanesh Selvaraj Date: Thu, 22 Jan 2026 19:24:26 +0530 Subject: [PATCH 1/3] fix(api): remove PostgreSQL-specific DISTINCT ON usage --- pokemon_v2/api.py | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/pokemon_v2/api.py b/pokemon_v2/api.py index 7454badd9..244cdf831 100644 --- a/pokemon_v2/api.py +++ b/pokemon_v2/api.py @@ -987,11 +987,7 @@ def get(self, request, pokemon_id): encounter_objects = Encounter.objects.filter(pokemon=pokemon) - area_ids = ( - encounter_objects.order_by("location_area") - .distinct("location_area") - .values_list("location_area", flat=True) - ) + area_ids = encounter_objects.values_list("location_area", flat=True).distinct() location_area_objects = LocationArea.objects.filter(pk__in=area_ids) version_objects = Version.objects @@ -1003,12 +999,9 @@ def get(self, request, pokemon_id): area_encounters = encounter_objects.filter(location_area_id=area_id) - version_ids = ( - area_encounters.order_by("version_id") - .distinct("version_id") - .values_list("version_id", flat=True) - ) - + version_ids = area_encounters.values_list( + "version_id", flat=True + ).distinct() version_details_list = [] for version_id in version_ids: From 42c1fac79fa2bd27130af1b849774a9d1ba21de3 Mon Sep 17 00:00:00 2001 From: Praanesh Selvaraj Date: Thu, 22 Jan 2026 21:01:59 +0530 Subject: [PATCH 2/3] fix(api): add order_by after distinct --- pokemon_v2/api.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pokemon_v2/api.py b/pokemon_v2/api.py index 244cdf831..c3812d5c3 100644 --- a/pokemon_v2/api.py +++ b/pokemon_v2/api.py @@ -987,7 +987,7 @@ def get(self, request, pokemon_id): encounter_objects = Encounter.objects.filter(pokemon=pokemon) - area_ids = encounter_objects.values_list("location_area", flat=True).distinct() + area_ids = encounter_objects.values_list("location_area", flat=True).distinct().order_by("location_area") location_area_objects = LocationArea.objects.filter(pk__in=area_ids) version_objects = Version.objects @@ -1001,7 +1001,7 @@ def get(self, request, pokemon_id): version_ids = area_encounters.values_list( "version_id", flat=True - ).distinct() + ).distinct().order_by("version_id") version_details_list = [] for version_id in version_ids: From 64804fc53ad6d9e3a0671e6aade88cb37c48f755 Mon Sep 17 00:00:00 2001 From: Praanesh Selvaraj Date: Thu, 22 Jan 2026 21:17:17 +0530 Subject: [PATCH 3/3] chore(style): format code with black --- pokemon_v2/api.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/pokemon_v2/api.py b/pokemon_v2/api.py index c3812d5c3..590721839 100644 --- a/pokemon_v2/api.py +++ b/pokemon_v2/api.py @@ -987,7 +987,11 @@ def get(self, request, pokemon_id): encounter_objects = Encounter.objects.filter(pokemon=pokemon) - area_ids = encounter_objects.values_list("location_area", flat=True).distinct().order_by("location_area") + area_ids = ( + encounter_objects.values_list("location_area", flat=True) + .distinct() + .order_by("location_area") + ) location_area_objects = LocationArea.objects.filter(pk__in=area_ids) version_objects = Version.objects @@ -999,9 +1003,11 @@ def get(self, request, pokemon_id): area_encounters = encounter_objects.filter(location_area_id=area_id) - version_ids = area_encounters.values_list( - "version_id", flat=True - ).distinct().order_by("version_id") + version_ids = ( + area_encounters.values_list("version_id", flat=True) + .distinct() + .order_by("version_id") + ) version_details_list = [] for version_id in version_ids: