From d9a0d74759b7c299280f2460510bb8aebc43b80e Mon Sep 17 00:00:00 2001 From: Egor fureunoir Gorbunov Date: Wed, 5 Nov 2025 11:27:36 +0300 Subject: [PATCH] Features: 1) Add support for including `es_rank` in ordering when `_es_rank_applied` is set; Fixes: 1) Adjust ordering logic to handle scenarios with `_es_rank_applied`; Extra: None; --- core/filters.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/core/filters.py b/core/filters.py index f66bb486..6f53999a 100644 --- a/core/filters.py +++ b/core/filters.py @@ -335,7 +335,10 @@ class ProductFilter(FilterSet): # type: ignore [misc] if "?" in mapped_requested: final_ordering = ["personal_order_tail", "?"] else: - final_ordering = ["personal_order_tail"] + mapped_requested + if getattr(self, "_es_rank_applied", False): + final_ordering = ["personal_order_tail", "es_rank"] + mapped_requested + else: + final_ordering = ["personal_order_tail"] + mapped_requested if final_ordering: qs = qs.order_by(*final_ordering)