跳转到主要内容

marshmallow的联合字段。

项目描述

marshmallow的联合字段。

  • 免费软件:MIT许可协议

警告

这个库通过逐一尝试字段列表,并且用第一个字段进行序列化(不抛出错误)。不关心值的类型,因此如果联合中的某个字段接受意外的类型值,它们将用于序列化。这可能会导致令人惊讶的行为,因为

u = Union(fields=[fields.Integer(), fields.String()]) # the Integer field accepts string representations of integers
type(u.deserialize('0')) # -> int

如果您想精确控制哪个字段将用于哪个值,您可以使用 marshmallow-polyfield 而不是这个库。

文档

https://python-marshmallow-union.readthedocs.io/

0.1.15 (2020-05-30)

变更

  • 修复 #32 :不再忽略传递给 _serialize 的值。这显著修复了联合列表的序列化,例如 List(Union([Int(), String()]))

0.1.12 (2019-10-24)

不兼容的变更

  • 在序列化时,如果所有候选字段失败,将抛出 marshmallow_union.ExceptionGroup 异常。#24


0.1.11 (2019-06-19)

变更

  • 覆盖以下划线开头的方法而不是普通方法 #22


变更日志

0.1.10 (2019-06-08)

变更

  • 使用 Towncrier 生成变更日志。 #18


0.1.0 (2019-06-07)

  • 首次发布在 PyPI 上。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源代码分发

marshmallow-union-0.1.15.post1.tar.gz (17.5 kB 查看哈希值)

上传时间 源代码

构建版本

marshmallow_union-0.1.15.post1-py2.py3-none-any.whl (4.6 kB 查看哈希值)

上传时间 Python 2 Python 3

支持