Most Python objects aren't serializable into JSON. Pydantic isn't special in this sense.
What can you do about this? -- Well, if this is a one-of situation, then, maybe just do it by hand? If this is a recurring problem: json.dumps() takes a cls argument that will be used to do the serialization. Extend json.JSONEncoder and implement the encode() method for the encoder class you are passing. I believe that the official docs have some information about this too. On Tue, May 28, 2024 at 2:50 PM Larry Martell via Python-list <python-list@python.org> wrote: > > Just getting started with pydantic. I have this example code: > > class FinishReason(Enum): > stop = 'stop' > > class Choice(BaseModel): > finish_reason: FinishReason = Field(...) > > > But I cannot serialize this: > > json.dumps(Choice(finish_reason=FinishReason.stop).dict()) > *** TypeError: Object of type FinishReason is not JSON serializable > > > I get the object not the value: > > (Pdb) Choice(finish_reason=FinishReason.stop) > Choice(finish_reason=<FinishReason.stop: 'stop'>) > > > Also tried it with .value, same result. > > What am I missing here? > -- > https://mail.python.org/mailman/listinfo/python-list -- https://mail.python.org/mailman/listinfo/python-list