From 0c46ff3541b3bfb57bdd7c9ee5b485ad8ae11236 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89lie=20Bouttier?= Date: Thu, 22 Sep 2016 19:11:49 +0200 Subject: [PATCH] simplify Q() operations --- proposals/views.py | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/proposals/views.py b/proposals/views.py index 8fb230c..5641b0a 100644 --- a/proposals/views.py +++ b/proposals/views.py @@ -80,23 +80,13 @@ def talk_list(request): talks = talks.filter(reduce(lambda x, y: x | y, [Q(topics__slug=topic) for topic in data['topic']])) if len(data['track']): show_filters = True - q1 = None - q2 = None + q = Q() if 'none' in data['track']: data['track'].remove('none') - q1 = Q(track__isnull=True) + q |= Q(track__isnull=True) if len(data['track']): - q2 = Q(track__slug__in=data['track']) - if q1 and q2: - q = q1 | q2 - elif q1: - q = q1 - elif q2: - q = q2 - else: - q = None - if q: - talks = talks.filter(q) + q |= Q(track__slug__in=data['track']) + talks = talks.filter(q) if data['vote'] != None: if data['vote']: talks = talks.filter(vote__user=request.user)