©BrainPad Inc. 7
● クラス定義とバリデーション対象の Dict オブジェクトが対応
● メンバにフィールドオブジェクトを設定する
● フィールドの型
○ プリミティブ:Str, Int, Float
○ Nested で囲むと他のスキーマを入れ子で参照できる
○ List, Dict
○ フィールドの自作も可能
■ 実例:MaskedString,, TableRowData, etc...
class UserSchema(Schema):
id = fields.Int()
name = fields.Str()
email = fields.Str()
class UserListSchema(Schema):
users = fields.List(
fields.Nested(UserSchema)
)
# UserSchema
{ "id": 123, "name": "foo",
"email": "
[email protected]" }
# UserListSchema
{ "users":
[{ "id": 123, "name": "foo",
"email": "
[email protected]" },
{ "id": 456, "name": "bar",
"email": "
[email protected]" }, ...]}
Marshmallow の概要