与棉花糖(de)序列化库的peewee集成。

Marshmallow-Peewee的Python项目详细描述


Build StatusVersionLicense

marshmallow peewee–PeeweeMarshmallow(de)序列化库集成。

importpeeweeaspwclassRole(pw.Model):name=pw.CharField(255,default='user')classUser(pw.Model):created=pw.DateTimeField(default=dt.datetime.now())name=pw.CharField(255)title=pw.CharField(127,null=True)active=pw.BooleanField(default=True)rating=pw.IntegerField(default=0)role=pw.ForeignKeyField(Role)frommarshmallow_peeweeimportModelSchemaclassUserSchema(ModelSchema):classMeta:model=Userrole=Role.create()user=User.create(name='Mike',role=role)result,errors=UserSchema().dump(user)print(result)# {'active': True,#  'created': '2016-03-29T15:27:18.600034+00:00',#  'id': 1,#  'name': 'Mike',#  'rating': 0,#  'role': 1,#  'title': None}result,errors=UserSchema().load(result)assertisinstance(result,User)assertresult.name=='Mike'frommarshmallow_peeweeimportRelatedclassUserSchema(ModelSchema):role=Related()classMeta:model=Userresult,errors=UserSchema().dump(user)print(result)# {'active': True,#  'created': '2016-03-29T15:30:32.767483+00:00',#  'id': 1,#  'name': 'Mike',#  'rating': 0,#  'role': {'id': 5, 'name': 'user'},#  'title': None}result,errors=UserSchema().load(result)assertnoterrorsassertisinstance(result,User)assertisinstance(result.role,Role)

Requirements

  • Python2.7+,3.4+

Installation

marshmallow peewee应该使用pip安装:

pip install Marshmallow-Peewee

注意

棉花糖peewee>;=2.0.0仅支持peewee>;=3.0.0。用于Peewee<;3.0.0 请使用marhmallow peewee==1.2.7

Usage

importpeeweeaspwclassRole(pw.Model):name=pw.CharField(255,default='user')classUser(pw.Model):created=pw.DateTimeField(default=dt.datetime.now())name=pw.CharField(255)title=pw.CharField(127,null=True)active=pw.BooleanField(default=True)rating=pw.IntegerField(default=0)role=pw.ForeignKeyField(Role)frommarshmallow_peeweeimportModelSchemaclassUserSchema(ModelSchema):classMeta:# model: Bind peewee.Model to the Schemamodel=User# model_converter: Use custom model_converter# model_converter = marshmallow_peewee.ModelConverter# dump_only_pk: Primary key is dump only# dump_only_pk = True# string_keys: Convert keys to strings# string_keys = True

Bug tracker

如果您有任何建议、错误报告或 烦恼请向问题追踪者报告 在https://github.com/klen/marshmallow-peewee/issues

License

根据麻省理工学院的许可证(请参阅许可证)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Requestcontextholder在spring 4中具有并发访问权限。IBMWebSphere上的x Web应用程序?   java如何下载、设置和使用Eclipse?   java如何组合这些mysql语句   java JDBC无法连接到openshift上的mysql数据库   如果存在允许正确处理的重载,java对于方便的方法来说是否可行?   使用hibernate序列的java Spring MVC不存在   具有路径的java Selenium ChromeDriver负载扩展问题   读一本书。java中的java文件   退出队列时,Java队列程序结果为空   Java lambda返回带有重复代码问题的列表   java使用意图从其他活动传递数据并在listview中显示   java如何在java中创建JSON输出   java Android:在不破坏或暂停活动的情况下关闭显示   支持Android电视和手机的java多apk   关于Java应用程序测试和调试的一组问题   如何在JavaSE中使用jdbcRealmShiro进行授权   在java中是否有一个无异常检查的URL解析实用程序?   当页面上有多个相同类型的元素时,java会选择一个特定的元素   递归需要帮助发现java代码中的缺陷