From 2f10c1cc150f419946679782d1950b6500cea98c Mon Sep 17 00:00:00 2001 From: Aleksandar Trifunovic Date: Sun, 24 Jun 2018 14:29:01 +0200 Subject: Minor code cleanup, formatting, and simplification. --- packages/views/__init__.py | 34 +++++++++++++++++----------------- packages/views/search.py | 8 +++----- 2 files changed, 20 insertions(+), 22 deletions(-) diff --git a/packages/views/__init__.py b/packages/views/__init__.py index 4d254420..904043af 100644 --- a/packages/views/__init__.py +++ b/packages/views/__init__.py @@ -44,15 +44,12 @@ def opensearch_suggest(request): hashlib.md5(search_term.encode('utf-8')).hexdigest() to_json = cache.get(cache_key, None) if to_json is None: - q = Q(pkgname__startswith=search_term) - lookup = search_term.lower() - if search_term != lookup: - # package names are lowercase by convention, so include that in - # search if original wasn't lowercase already - q |= Q(pkgname__startswith=lookup) + # Package names are lowercase by convention + q = Q(pkgname__istartswith=search_term) + names = Package.objects.filter(q).values_list( - 'pkgname', flat=True).order_by('pkgname').distinct()[:10] - results = [search_term, list(names)] + 'pkgname', flat=True).order_by('pkgname').distinct()[:10] + results = (search_term, tuple(names)) to_json = json.dumps(results, ensure_ascii=False) cache.set(cache_key, to_json, 613) return HttpResponse(to_json, content_type='application/x-suggestions+json') @@ -77,12 +74,13 @@ def update(request): )) for pkg in pkgs: - if request.user not in pkg.maintainers: - prel = PackageRelation(pkgbase=pkg.pkgbase, - user=request.user, - type=PackageRelation.MAINTAINER) - count += 1 - prel.save() + if request.user in pkg.maintainers: + continue + + PackageRelation(pkgbase=pkg.pkgbase, + user=request.user, + type=PackageRelation.MAINTAINER).save() + count += 1 messages.info(request, "%d base packages adopted." % count) @@ -91,9 +89,11 @@ def update(request): # [community] -> [extra] moves for pkg in Package.objects.filter(id__in=ids): if request.user in pkg.maintainers: - rels = PackageRelation.objects.filter(pkgbase=pkg.pkgbase, - user=request.user, - type=PackageRelation.MAINTAINER) + rels = PackageRelation.objects.filter( + pkgbase=pkg.pkgbase, + user=request.user, + type=PackageRelation.MAINTAINER + ) count += rels.count() rels.delete() diff --git a/packages/views/search.py b/packages/views/search.py index 90fb9d95..4bcd5fa1 100644 --- a/packages/views/search.py +++ b/packages/views/search.py @@ -114,7 +114,7 @@ class SearchListView(ListView): paginate_by = 100 sort_fields = ("arch", "repo", "pkgname", "pkgbase", "compressed_size", - "installed_size", "build_date", "last_update", "flag_date") + "installed_size", "build_date", "last_update", "flag_date") allowed_sort = list(sort_fields) + ["-" + s for s in sort_fields] def get(self, request, *args, **kwargs): @@ -132,10 +132,8 @@ class SearchListView(ListView): packages = parse_form(self.form, packages) sort = self.form.cleaned_data['sort'] if sort in self.allowed_sort: - packages = packages.order_by(sort) - else: - packages = packages.order_by('pkgname') - return packages + return packages.order_by(sort) + return packages.order_by('pkgname') # Form had errors so don't return any results return Package.objects.none() -- cgit v1.2.3-55-g3dc8