为什么在子类化Pydantic BaseModel时,我会得到"AttributeError: __fields_set__"的错误提示?
- 论坛
- 为什么在子类化Pydantic BaseModel时,我会得到"AttributeError: __fields_set__"的错误提示?
6 浏览
为什么在子类化Pydantic BaseModel时,我会得到"AttributeError: __fields_set__"的错误提示?
我有一个项目,其中我的基类和子类都实现了pydantic.BaseModel
:
from pydantic import BaseModel from typing import List from dataclasses import dataclass @dataclass class User(BaseModel): id: int @dataclass class FavoriteCar(User): car_names: List[str] car = FavoriteCar(id=1, car_names=["Acura"]) print(f"{car.id} {car.car_names[0]}")
但是出现了以下错误:
self.__fields_set__.add(name)
E AttributeError: __fields_set__
有人可以解释一下发生了什么吗?我想使用pydantic的原因是因为我需要一种快速将Python对象转换为dict
(或JSON)并进行反向转换的方法。