risolto problema risultati doppi
parent
01be31c1fd
commit
6a6f956785
|
|
@ -6,7 +6,7 @@ from django.contrib import admin
|
||||||
from django.contrib.admin.views.autocomplete import AutocompleteJsonView
|
from django.contrib.admin.views.autocomplete import AutocompleteJsonView
|
||||||
from django.contrib.admin.widgets import AutocompleteMixin, AutocompleteSelect
|
from django.contrib.admin.widgets import AutocompleteMixin, AutocompleteSelect
|
||||||
from django.core.exceptions import FieldDoesNotExist, PermissionDenied
|
from django.core.exceptions import FieldDoesNotExist, PermissionDenied
|
||||||
from django.db.models import Case, Q, Value, When
|
from django.db.models import Case, Max, Q, Value, When
|
||||||
from django.http import Http404, JsonResponse
|
from django.http import Http404, JsonResponse
|
||||||
from django.urls import path
|
from django.urls import path
|
||||||
|
|
||||||
|
|
@ -64,8 +64,8 @@ class DrillDownAutocompleteJsonView(AutocompleteJsonView):
|
||||||
# print('Prima:',qs.query,'\n\n')
|
# print('Prima:',qs.query,'\n\n')
|
||||||
if hasattr(self, 'linkedfields'):
|
if hasattr(self, 'linkedfields'):
|
||||||
drilldown_filter_conditions = Q(**self.drilldown_filter_data)
|
drilldown_filter_conditions = Q(**self.drilldown_filter_data)
|
||||||
qs = qs.annotate(ddok=Case(When(drilldown_filter_conditions, then=Value(
|
qs = qs.annotate(ddok=Max(Case(When(drilldown_filter_conditions, then=Value(
|
||||||
1)), default=Value(0))).order_by('-ddok', *qs.query.order_by)
|
1)), default=Value(0)))).order_by('-ddok', *qs.query.order_by)
|
||||||
# print('Dopo:',qs.query,'\n\n')
|
# print('Dopo:',qs.query,'\n\n')
|
||||||
else:
|
else:
|
||||||
qs = qs.annotate(ddok=Value(1))
|
qs = qs.annotate(ddok=Value(1))
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue