首页 > 解决方案 > 作为 attr.s 列表的 attr.ib 的序列化(使用 yasoo)失败

问题描述

from typing import List

import attr
from yasoo import serialize


@attr.s
class Bar:
    name = attr.ib()
    type = attr.ib()
    value = attr.ib()


@attr.s
class Foo:
    bars = attr.ib(type=List[Bar])


serialize(Foo([Bar('a', 'b', 'c'), Bar('a', 'b', 'c')]))

TypeError:找到无法序列化的“Bar”类型的对象

是否有针对此限制的干净解决方法?

标签: pythonattr

解决方案


这确实是一个错误,但现在已修复(已在 0.2.1 版中修复,请参阅https://github.com/drorvinkler/yasoo/issues/1)。

*我是yasoo的作者


推荐阅读