私はよくある問題のようですが、これまでのところ私に当てはまる解決策は見当たりません。私はちょっと小さいものを見逃していると思うが、私は助けを求めるために分解した。フラスコとpymongoを使用してjson出力を取得しようとしています。ここオブジェクト 'ObjectID'のオブジェクトがJSONシリアライズ可能ではありません
は、印刷(結果)を使用して、コンソール内のオブジェクトです:
[{'_id': ObjectId('598b5de38161a821188f1a7c'), 'first name': 'first name', 'last Name': 'last name'}]
私はエラーを取得することに返却しようとすると: はTypeError:タイプのオブジェクトを「ObjectIdが」JSONシリアライズ可能な
ではありませんクラスの連絡先(リソース):
def get(self):
results =[]
connect = MongoClient("<REMOVED>")
db = connect['<REMOVED>']
collection = db['contact']
contacts = collection.find()
if collection:
number_of_contacts = collection.count()
for document in contacts:
results.append(document)
print(results)
return {'results': results, 'count': number_of_contacts}
私はbson.json_utilの提案を試みました。私のjsonオブジェクトを二重にエンコードすることで、シリアライズ可能なエラーをクリアしました。それは私がやっていることに対する良い解決策ではないようです。
可能な重複[例外TypeError:ObjectIdが( '')ではありませんJSON、シリアライズ](https://stackoverflow.com/questions/16586180/typeerror-objectid-is-not -json-serializable) –
私はこれを試しましたが、望みの結果が得られませんでした。私はこの解決策が何をしたのかを覚えていませんが、まだ私のスクラッチスペースにコードを残しています。 –