用于python的javascript资源表示法
jsrn的Python项目详细描述
此库已被弃用,取而代之的是Odin
一种基于json的资源表示法,可以很容易地转换为对象图。
亮点
- 基于类的声明式样式
- 支持所有json原语类型(包括javascript日期)
- 用于构建复合资源的字段
- 字段和资源级别验证
- 易于扩展以支持自定义字段
- 支持Python2.7+和Python3.3+。
需要
- 六
可选
- jinja2>;=2.7-用于生成文档
- SimpleJSON-性能改进
示例
定义:
import jsrn class Author(jsrn.Resource): name = jsrn.StringField() class Publisher(jsrn.Resource): name = jsrn.StringField() class Book(jsrn.Resource): title = jsrn.StringField() authors = jsrn.ArrayOf(Author) publisher = jsrn.ObjectAs(Publisher) genre = jsrn.StringField() num_pages = jsrn.IntegerField()
>>> b = Book( title="Consider Phlebas", genre="Space Opera", publisher=Publisher(name="Macmillan"), num_pages=471 ) >>> b.authors.append(Author(name="Iain M. Banks")) >>> jsrn.dumps(b, pretty_print=True) { "$": "Book", "authors": [ { "$": "Author", "name": "Iain M. Banks" } ], "genre": "Space Opera", "num_pages": 471, "publisher": { "$": "Publisher", "name": "Macmillan" }, "title": "Consider Phlebas" }