pydantic模式的代码生成器
pydantic-gen的Python项目详细描述
这个软件包的作用是什么
这是一个代码生成包,它将YML定义转换为Pydantic模型(python代码或python对象)。在
为什么要生成模式?在
通常,您只需在程序中编写模式,但是有几个 代码生成非常有意义的用例:
- 您正在编写多个使用同一模式的应用程序(考虑一个API服务器和一个客户端库)
- 你用不止一种编程语言编程
入门
用法
首先,需要使用所需的类模式创建一个YAML文件。请参阅example.yml文件。在
frompydantic_genimportSchemaGengenerated=SchemaGen('example.yml')
代码现在生成并存储在生成代码属性。有 使用代码的两种方法:
- 将其保存到文件中,然后在程序中使用该文件:
generated.to_file('example_output.py')
您可以在example_output.py中检查结果文件
- 或者直接导入生成的类而不保存:
generated.to_sys(module_name='generated_schemas')
跑完生成的.to\u sys(module_name='generated\u schemas'您生成的代码将可用于导入:
importgenerated_schemasasgsschema=gs.GeneratedSchema1(id=1)
使用模式
推荐的使用模式是创建项目所需的yaml文件 并将它们存储在单独的存储库中,以实现所有项目之间的最大一致性。在
YAML文件结构
模式-描述的所有模式的列表
name-生成的类的名称
props-使用python类型的类的属性列表 注释。字段:名称-字段名,类型-字段类型, 可选, default-字段的默认值。在
配置-来自Model Config的配置设置列表 皮丹蒂克的。在
测试
项目完全由测试覆盖,并使用pytest。运行:
pytest
包装注意事项
这个项目使用优秀的poetry进行打包。请阅读一下,让我们开始使用 <引用>pyproject.toml项目文件作为标准。阅读更多:
- 项目
标签: