summaryrefslogtreecommitdiff
path: root/opendc-web/opendc-web-api/opendc/util/json.py
diff options
context:
space:
mode:
Diffstat (limited to 'opendc-web/opendc-web-api/opendc/util/json.py')
-rw-r--r--opendc-web/opendc-web-api/opendc/util/json.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/opendc-web/opendc-web-api/opendc/util/json.py b/opendc-web/opendc-web-api/opendc/util/json.py
new file mode 100644
index 00000000..2ef4f965
--- /dev/null
+++ b/opendc-web/opendc-web-api/opendc/util/json.py
@@ -0,0 +1,12 @@
+import flask
+from bson.objectid import ObjectId
+
+
+class JSONEncoder(flask.json.JSONEncoder):
+ """
+ A customized JSON encoder to handle unsupported types.
+ """
+ def default(self, o):
+ if isinstance(o, ObjectId):
+ return str(o)
+ return flask.json.JSONEncoder.default(self, o)