From 4972bdb3834e0b5db1c4f20cf4bf0082a813ab76 Mon Sep 17 00:00:00 2001 From: Stephan Jaekel Date: Fri, 14 May 2010 14:02:39 +0200 Subject: [PATCH] ignore empty Q objects when combining Q objects. --- mongoengine/queryset.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/mongoengine/queryset.py b/mongoengine/queryset.py index 11b5321a..3db23baa 100644 --- a/mongoengine/queryset.py +++ b/mongoengine/queryset.py @@ -59,8 +59,10 @@ class Q(object): def _combine(self, other, op): obj = Q() - obj.query = ['('] + copy.deepcopy(self.query) + [op] - obj.query += copy.deepcopy(other.query) + [')'] + if self.query[0]: + obj.query = ['('] + copy.deepcopy(self.query) + [op] + copy.deepcopy(other.query) + [')'] + else: + obj.query = copy.deepcopy(other.query) return obj def __or__(self, other):