マシュマロとモンゴエンジンを使用して、Flask の上に API を構築しています。呼び出しを行い、ID をシリアル化する必要がある場合、次のエラーが表示されます。
TypeError: ObjectId('54c117322053049ba3ef31f3') is not JSON serializable
ObjectId の処理方法をオーバーライドするために、他のライブラリでいくつかの方法を見ました。私はまだマシュマロでそれを理解していません.誰もそれを行う方法を知っていますか?
私のモデルは次のとおりです。
class Process(db.Document):
name = db.StringField(max_length=255, required=True, unique=True)
created_at = db.DateTimeField(default=datetime.datetime.now, required=True)
私のシリアライザ:
class ProcessSerializer(Serializer):
class Meta:
fields = ("id", "created_at", "name")
そしてビュー:
class ProcessView(Resource):
def get(self, id):
process = Process.objects.get_or_404(id)
return ProcessSerializer(process).data