From dac7a8312b432e8078d5af3f3be15ecc8ecdc020 Mon Sep 17 00:00:00 2001 From: Nanoy Date: Wed, 23 Jan 2019 10:49:33 +0100 Subject: [PATCH] startswith devient contains --- gestion/views.py | 10 +++++----- users/views.py | 13 +++++++++---- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/gestion/views.py b/gestion/views.py index 9bf39bc..fe76b11 100644 --- a/gestion/views.py +++ b/gestion/views.py @@ -532,7 +532,7 @@ class ProductsAutocomplete(autocomplete.Select2QuerySetView): def get_queryset(self): qs = Product.objects.all() if self.q: - qs = qs.filter(name__istartswith=self.q) + qs = qs.filter(name__contains=self.q) return qs class ActiveProductsAutocomplete(autocomplete.Select2QuerySetView): @@ -542,7 +542,7 @@ class ActiveProductsAutocomplete(autocomplete.Select2QuerySetView): def get_queryset(self): qs = Product.objects.filter(is_active=True) if self.q: - qs = qs.filter(name__istartswith=self.q) + qs = qs.filter(name__contains=self.q) return qs ########## Kegs ########## @@ -790,7 +790,7 @@ class KegActiveAutocomplete(autocomplete.Select2QuerySetView): def get_queryset(self): qs = Keg.objects.filter(is_active = True) if self.q: - qs = qs.filter(name__istartswith=self.q) + qs = qs.filter(name__contains=self.q) return qs class KegPositiveAutocomplete(autocomplete.Select2QuerySetView): @@ -800,7 +800,7 @@ class KegPositiveAutocomplete(autocomplete.Select2QuerySetView): def get_queryset(self): qs = Keg.objects.filter(stockHold__gt = 0) if self.q: - qs = qs.filter(name__istartswith=self.q) + qs = qs.filter(name__contains=self.q) return qs ########## Menus ########## @@ -957,7 +957,7 @@ class MenusAutocomplete(autocomplete.Select2QuerySetView): def get_queryset(self): qs = Menu.objects.all() if self.q: - qs = qs.filter(name__istartswith=self.q) + qs = qs.filter(name__contains=self.q) return qs ########## Ranking ########## diff --git a/users/views.py b/users/views.py index 8777b55..a2c3a0c 100644 --- a/users/views.py +++ b/users/views.py @@ -1079,7 +1079,7 @@ class AllUsersAutocomplete(autocomplete.Select2QuerySetView): def get_queryset(self): qs = User.objects.all() if self.q: - qs = qs.filter(Q(username__istartswith=self.q) | Q(first_name__istartswith=self.q) | Q(last_name__istartswith=self.q)) + qs = qs.filter(Q(username__contains=self.q) | Q(first_name__contains=self.q) | Q(last_name__contains=self.q)) return qs class ActiveUsersAutocomplete(autocomplete.Select2QuerySetView): @@ -1089,7 +1089,7 @@ class ActiveUsersAutocomplete(autocomplete.Select2QuerySetView): def get_queryset(self): qs = User.objects.filter(is_active=True) if self.q: - qs = qs.filter(Q(username__istartswith=self.q) | Q(first_name__istartswith=self.q) | Q(last_name__istartswith=self.q)) + qs = qs.filter(Q(username__contains=self.q) | Q(first_name__contains=self.q) | Q(last_name__contains=self.q)) return qs class AdherentAutocomplete(autocomplete.Select2QuerySetView): @@ -1098,8 +1098,13 @@ class AdherentAutocomplete(autocomplete.Select2QuerySetView): """ def get_queryset(self): qs = User.objects.all() + pks = [x.pk for x in qs if x.is_adherent] + qs = User.objects.filter(pk__in=pks) + if self.q: + qs = qs.filter(Q(username__contains=self.q) | Q(first_name__contains=self.q) | Q(last_name__contains=self.q)) return qs + class NonSuperUserAutocomplete(autocomplete.Select2QuerySetView): """ Autocomplete for non-superuser users @@ -1107,7 +1112,7 @@ class NonSuperUserAutocomplete(autocomplete.Select2QuerySetView): def get_queryset(self): qs = User.objects.filter(is_superuser=False) if self.q: - qs = qs.filter(Q(username__istartswith=self.q) | Q(first_name__istartswith=self.q) | Q(last_name__istartswith=self.q)) + qs = qs.filter(Q(username__contains=self.q) | Q(first_name__contains=self.q) | Q(last_name__contains=self.q)) return qs class NonAdminUserAutocomplete(autocomplete.Select2QuerySetView): @@ -1117,5 +1122,5 @@ class NonAdminUserAutocomplete(autocomplete.Select2QuerySetView): def get_queryset(self): qs = User.objects.filter(is_staff=False) if self.q: - qs = qs.filter(Q(username__istartswith=self.q) | Q(first_name__istartswith=self.q) | Q(last_name__istartswith=self.q)) + qs = qs.filter(Q(username__contains=self.q) | Q(first_name__contains=self.q) | Q(last_name__contains=self.q)) return qs \ No newline at end of file