Commit 0906bf2c by tony

fix empty and_query

parent de95598a
...@@ -107,11 +107,13 @@ class SearchFilter(BaseFilterBackend): ...@@ -107,11 +107,13 @@ class SearchFilter(BaseFilterBackend):
for orm_lookup in orm_lookups] for orm_lookup in orm_lookups]
and_queries.append(reduce(operator.or_, or_queries)) and_queries.append(reduce(operator.or_, or_queries))
if and_queries:
if settings.DATABASES[queryset.db]["ENGINE"] == "django.db.backends.oracle": if settings.DATABASES[queryset.db]["ENGINE"] == "django.db.backends.oracle":
pk_list = queryset.filter(reduce(operator.and_, and_queries)).values_list('pk', flat=True) pk_list = queryset.filter(reduce(operator.and_, and_queries)).values_list('pk', flat=True)
return queryset.filter(pk__in=frozenset(pk_list)) return queryset.filter(pk__in=frozenset(pk_list))
else: else:
return queryset.filter(reduce(operator.and_, and_queries)).distinct() return queryset.filter(reduce(operator.and_, and_queries)).distinct()
return queryset
class OrderingFilter(BaseFilterBackend): class OrderingFilter(BaseFilterBackend):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment