From ab2ef69c6a5574dcabfaffa8331d71e5a827fba3 Mon Sep 17 00:00:00 2001 From: "Breeze.kay" Date: Wed, 3 Jun 2015 18:13:54 +0800 Subject: [PATCH] improve _created status when switch collection and db --- mongoengine/document.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mongoengine/document.py b/mongoengine/document.py index f83f9fa1..791572a4 100644 --- a/mongoengine/document.py +++ b/mongoengine/document.py @@ -477,7 +477,7 @@ class Document(BaseDocument): raise OperationError(message) signals.post_delete.send(self.__class__, document=self) - def switch_db(self, db_alias): + def switch_db(self, db_alias, keep_created=True): """ Temporarily switch the database for a document instance. @@ -499,12 +499,12 @@ class Document(BaseDocument): self._get_collection = lambda: collection self._get_db = lambda: db self._collection = collection - self._created = True + self._created = True if not keep_created else self._created self.__objects = self._qs self.__objects._collection_obj = collection return self - def switch_collection(self, collection_name): + def switch_collection(self, collection_name, keep_created=True): """ Temporarily switch the collection for a document instance. @@ -525,7 +525,7 @@ class Document(BaseDocument): collection = cls._get_collection() self._get_collection = lambda: collection self._collection = collection - self._created = True + self._created = True if not keep_created else self._created self.__objects = self._qs self.__objects._collection_obj = collection return self