From a192029901c6c21b3cc949a6221a1090083ebf86 Mon Sep 17 00:00:00 2001 From: Aleksandr Sorokoumov Date: Sat, 16 Mar 2013 16:47:22 +0100 Subject: [PATCH] ReferenceField query chaining bug fixed. --- mongoengine/queryset.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mongoengine/queryset.py b/mongoengine/queryset.py index bff05fcf..6c61ab9e 100644 --- a/mongoengine/queryset.py +++ b/mongoengine/queryset.py @@ -367,6 +367,10 @@ class QuerySet(object): self._skip = None self._hint = -1 # Using -1 as None is a valid value for hint + def __deepcopy__(self, memo): + """Essential for chained queries with ReferenceFields involved""" + return self.clone() + def clone(self): """Creates a copy of the current :class:`~mongoengine.queryset.QuerySet` @@ -814,7 +818,6 @@ class QuerySet(object): mongo_query['$and'].append(value) else: mongo_query['$and'] = value - return mongo_query def get(self, *q_objs, **query):