跳转到主要内容

将Lollipop模式转换为JSON模式的库

项目描述

License: MIT Build Status PyPI

Lollipop模式转换为JSON模式的库。

示例

import lollipop.types as lt
import lollipop.validators as lv

EMAIL_REGEXP = r"^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$"

USER = lt.Object({
    'name': lt.String(validate=lv.Length(min=1)),
    'email': lt.String(validate=lv.Regexp(EMAIL_REGEXP)),
    'age': lt.Optional(lt.Integer(validate=lv.Range(min=18))),
}, name='User', description='User information')

from lollipop_jsonschema import json_schema
import json

print json.dumps(json_schema(USER), indent=2)
# {
#   "title": "User",
#   "description": "User information",
#   "type": "object",
#   "properties": {
#     "age": {
#       "type": "integer",
#       "minimum": 18
#     },
#     "name": {
#       "type": "string",
#       "minLength": 1
#     },
#     "email": {
#       "type": "string",
#       "pattern": "^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+$"
#     }
#   },
#   "required": [
#     "name",
#     "email"
#   ]
# }

安装

$ pip install lollipop-jsonschema

要求

  • Python >= 2.7 and <= 3.6

  • lollipop >= 1.1.5

许可证

MIT许可。有关更多信息,请参阅捆绑的LICENSE文件。

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

lollipop-jsonschema-0.8.2.tar.gz (10.9 kB 查看哈希值)

上传时间 源代码

构建版本

lollipop_jsonschema-0.8.2-py2.py3-none-any.whl (7.6 kB 查看哈希值)

上传时间 Python 2 Python 3

由以下机构支持