0

我正在尝试解析 AWS GuardDuty Json 数据,但是一些嵌套的数据字段正在查找特定的。有没有办法在 pydantic 中做这样的事情:

from pydantic import Basemodel
from pydantic.main import create_model

class AwsModel(BaseModel):
  accountID: str
  service: create_model("ServiceModel")
  

并让 pydantic 将该service字段创建为动态模型?

澄清

我在一些测试数据上试过这个:

from pydantic import BaseModel
from pydantic.main import create_model

data = {
        "test": "test",
        "dynamic_json":{
            "dyn1": "dyn1_v",
            "dyn2": "dyn2_v",
            "dyn3": "dyn3_v"
            },
        "test2":"test2"
        }

class TestModel(BaseModel):
    test: str
    dynamic_json: create_model("dynamic_json")
    test2: str

m = TestModel.parse_obj(data)
print(m)

输出:test='test' dynamic_json=dynamic_json() test2='test2'

它创建了一个名为的对象dynamic_json,其中没有字段,我如何让 pydantic 获取嵌套的 json 数据并从数据构建模型?

4

0 回答 0