我怎么能限制这个数据类的序列化,只有基类上的属性?



代码如下:

from dataclasses import dataclass
from dataclasses_json import dataclass_json
@dataclass_json
@dataclass
class Foo:
f: str
@dataclass_json
@dataclass
class Baz(Foo):
b: str
def full(self):
return self.to_dict()
# as expected, returns {"f":"f", "b":"b"}

def partial(self):
return Foo.to_dict(self)
# also returns {"f":"f", "b":"b"}
# how can I make it just return {"f":"f"}?

print(Baz(f="f", b="b").partial())

输出:

{"f":"f"}

如何限制partial只返回f而不同时返回bf?

您可以使用Foo类模式只输出Foo上存在的字段

def partial(self):
return Foo.schema().dump(self)

相关内容

  • 没有找到相关文章

最新更新