Last updated:
0 purchases
attrsmallow 0.0.1
Welcome to attrsmallow Documentation
attrs is a powerful library helps you to write concise and correct classes. And marshmallow is a powerful framework to write serializer/deserializer and data validator for complex object.
attrsmallow is a glue layer to taking advantage from them.
Quick Links
Usage
A blog example:
import attr
import marshmallow
from attrsmallow import BaseModel, BaseSchema
@attr.s
class User(BaseModel):
id = attr.ib()
name = attr.ib()
class UserSchema(BaseSchema):
id = fields.Integer(required=True)
name = fields.String(required=True)
Model = User
User.Schema = UserSchema
@attr.s
class Post(BaseModel):
id = attr.ib()
title = attr.ib()
user = attr.ib()
class PostSchema(BaseSchema):
id = fields.Integer()
title = fields.String()
user = fields.Nested(UserSchema)
Model = Post
Post.Schema = PostSchema
post_data = dict(id=1, title="Hello World!", user=dict(id=1, name="Alice"))
post = Post.load(post_data)
Install
attrsmallow is released on PyPI, so all you need is:
$ pip install attrsmallow
To upgrade to latest version:
$ pip install --upgrade attrsmallow
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.