python fields_Python fields.Nested方法代码示例

本文详细介绍了Python库marshmallow中fields.Nested方法的使用,包括如何创建嵌套的Schema,处理嵌套列表,以及如何设置元数据。通过多个代码示例展示了fields.Nested在实际操作中的应用,涵盖了不同场景下的用法,如设置描述、排除字段、限制列表长度等。
摘要由CSDN通过智能技术生成

本文整理汇总了Python中marshmallow.fields.Nested方法的典型用法代码示例。如果您正苦于以下问题:Python fields.Nested方法的具体用法?Python fields.Nested怎么用?Python fields.Nested使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在模块marshmallow.fields的用法示例。

在下文中一共展示了fields.Nested方法的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: test_nested_descriptions

​点赞 6

# 需要导入模块: from marshmallow import fields [as 别名]

# 或者: from marshmallow.fields import Nested [as 别名]

def test_nested_descriptions():

class TestNestedSchema(Schema):

myfield = fields.String(metadata={"description": "Brown Cow"})

yourfield = fields.Integer(required=True)

class TestSchema(Schema):

nested = fields.Nested(

TestNestedSchema, metadata={"description": "Nested 1", "title": "Title1"}

)

yourfield_nested = fields.Integer(required=True)

schema = TestSchema()

dumped = validate_and_dump(schema)

nested_def = dumped["definitions"]["TestNestedSchema"]

nested_dmp = dumped["definitions"]["TestSchema"]["properties"]["nested"]

assert nested_def["properties"]["myfield"]["description"] == "Brown Cow"

assert nested_dmp["$ref"] == "#/definitions/TestNestedSchema"

assert nested_dmp["description"] == "Nested 1"

assert nested_dmp["title"] == "Title1"

开发者ID:fuhrysteve,项目名称:marshmallow-jsonschema,代码行数:24,

示例2: test_nested_string_to_cls

​点赞 6

# 需要导入模块: from marshmallow import fields [as 别名]

# 或者: from marshmallow.fields import Nested [as 别名]

def test_nested_string_to_cls():

class TestNamedNestedSchema(Schema):

foo = fields.Integer(required=True)

class TestSchema(Schema):

foo2 = fields.Integer(required=True)

nested = fields.Nested("TestNamedNestedSchema")

schema = TestSchema()

dumped = validate_and_dump(schema)

nested_def = dumped["definitions"]["TestNamedNestedSchema"]

nested_dmp = dumped["definitions"]["TestSchema"]["properties"]["nested"]

assert nested_dmp["type"] == "object"

assert nested_def["properties"]["foo"]["format"] == "integer"

开发者ID:fuhrysteve,项目名称:marshmallow-jsonschema,代码行数:18,

示例3: test_list_nested

​点赞 6

# 需要导入模块: from marshmallow import fields [as 别名]

# 或者: from marshmallow.fields import Nested [as 别名]

def test_list_nested():

"""Test that a list field will work with an inner nested field."""

class InnerSchema(Schema):

foo = fields.Integer(required=True)

class ListSchema(Schema):

bar = fields.List(fields.Nested(InnerSchema), required=True)

schema = ListSchema()

dumped = validate_and_dump(schema)

nested_json = dumped["definitions"]["ListSchema"]["properties"]["bar"]

assert nested_json["type"] == "array"

assert "items" in nested_json

item_schema = nested_json["items"]

assert "InnerSchema" in item_schema["$ref"]

开发者ID:fuhrysteve,项目名称:marshmallow-jsonschema,代码行数:21,

示例4: test_deep_nested

​点赞 6

# 需要导入模块: from marshmallow import fields [as 别名]

# 或者: from marshmallow.fields import Nested [as 别名]

def test_deep_nested():

"""Test that deep nested schemas are in definitions."""

class InnerSchema(Schema):

boz = fields.Integer(required=True)

class InnerMiddleSchema(Schema):

baz = fields.Nested(InnerSchema, required=True)

class OuterMiddleSchema(Schema):

bar = fields.Nested(InnerMiddleSchema, required=True)

class OuterSchema(Schema):

foo = fields.Nested(OuterMiddleSchema, required=True)

schema = OuterSchema()

dumped = validate_and_dump(schema)

defs = dumped["definitions"]

assert "OuterSchema" in defs

assert "OuterMiddleSchema" in defs

assert "InnerMiddleSchema" in defs

assert "InnerSchema" in defs

开发者ID:fuhrysteve,项目名称:marshmallow-jsonschema,代码行数:25,

示例5: test_respect_only_for_nested_schema

​点赞 6

# 需要导入模块: from marshmallow import fields [as 别名]

# 或者: from marshmallow.fields import Nested [as 别名]

def test_respect_only_for_nested_schema():

"""Should ignore fields not in 'only' metadata for nested schemas."""

class InnerRecursiveSchema(Schema):

id = fields.Integer(required=True)

baz = fields.String()

recursive = fields.Nested("InnerRecursiveSchema")

class MiddleSchema(Schema):

id = fields.Integer(required=True)

bar = fields.String()

inner = fields.Nested("InnerRecursiveSchema", only=("id", "baz"))

class OuterSchema(Schema):

foo2 = fields.Integer(required=True)

nested = fields.Nested("MiddleSchema")

schema = OuterSchema()

dumped = validate_and_dump(schema)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值