APISTAR的更好参数(和pydantic支持)

apistar-pydantic的Python项目详细描述


更好的APIStar处理程序参数 (和pydantic支持)。

常规用法按预期工作,但文档和openapi模式尚未完成。

$ pip install apistar-pydantic

用法

fromapistarimportAppfrompydanticimportBaseModelfromapistar_pydanticimport(QueryParam,PathParam,DictBodyData,DictQueryData,PydanticBodyDataasBodyData,PydanticQueryDataasQueryData,Route,components,)## Declare models#classCity(BaseModel):"""City info"""name:strpopulation:intclassComputer(BaseModel):"""Computer info"""model:strprice:floatclassComputerCity(City,Computer):"""A computer in a city"""## Create views#defresource_complete(param1:QueryParam[str],param2:QueryParam[int],param3:DictBodyData[dict],param4:DictQueryData[dict]):returnrepr(locals())defresource_query(city:QueryData[City]):return"%s has %d citizens."%(city.name,city.population)defresource_body(computer:BodyData[Computer]):return"%s costs R$ %.2f"%(computer.model,computer.price)defresource_mixed(city:QueryData[City],computer:BodyData[Computer]):returnComputerCity(**city.dict(),**computer.dict())## Start the app#app=App(routes=[Route('/resource','GET',resource_query),Route('/resource_query','GET',resource_query),Route('/resource_body','POST',resource_body),Route('/resource_mixed','POST',resource_mixed),],components=[*components])if__name__=='__main__':app.serve('127.0.0.1',3000,debug=True)

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

推荐PyPI第三方库


热门话题
java InputStream对象在声明后关闭   java未定义名为“transactionManager”的bean重命名transactionManager   java“jar”命令何时会拒绝将类添加到java中。jar文件?   java JPA标准依赖WHERE子句   安卓中从SD卡读取文本文件时出现java错误   java直接启用类似位置的权限   使用@WebMvcTest和Mockito-BDDMockito对SpringBoot-RestController进行java测试   java JSESSIONID存储在哪里?   java jtextarea鼠标事件覆盖容器鼠标事件   java DRL无法解析动态加载的类   java是从一个方法返回多个对象的最简单方法   java自定义按钮/编辑框是否不可见?   java GUI如何在保存用户输入的同时在面板或框架之间切换   swing Java自定义JSlider不会更新   GridBagLayout中的java超过1个JPanel   java从ProjectReactor中的flux中采样除第一个元素外的所有元素   Java泛型和泛型类型   Java代码生成宽指令的jvm