Skip to content

Commit edcfe2b

Browse files
author
wcdolphin
committed
Support older versions of MongoEngine
1 parent 1fcc754 commit edcfe2b

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

flask_mongoengine/json.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,21 @@
11
from flask.json import JSONEncoder
22
from bson import json_util
33
from mongoengine.base import BaseDocument
4-
from mongoengine import QuerySet
5-
4+
try:
5+
from mongoengine.base import BaseQuerySet
6+
except ImportError as ie: # support mongoengine < 0.7
7+
from mongoengine.queryset import QuerySet as BaseQuerySet
68

79
def _make_encoder(superclass):
810
class MongoEngineJSONEncoder(superclass):
911
'''
1012
A JSONEncoder which provides serialization of MongoEngine
11-
documents and querysets.
13+
documents and queryset objects.
1214
'''
1315
def default(self, obj):
1416
if isinstance(obj, BaseDocument):
1517
return json_util._json_convert(obj.to_mongo())
16-
elif isinstance(obj, QuerySet):
18+
elif isinstance(obj, BaseQuerySet):
1719
return json_util._json_convert(obj.as_pymongo())
1820
return superclass.default(self, obj)
1921
return MongoEngineJSONEncoder

0 commit comments

Comments
 (0)