问题描述
我正在使用flask-restx创建一个简单的API-我是API编程的新手,尤其是flask-restx。
基于quickstart和其他文档,我已经运行了基本的CRUD API。
我有几个模型,所有模型都使用相同的基本结构来定义它们。我将使用dyn Trait
作为简单示例。
定义模型时,对于创建对象的端点(需要所有字段),我有以下要求:
location
以及以下用于编辑对象的内容,其中所有字段均为可选:
location_create_model = api.model("LocationCreate",{
'name': fields.String(required=True,description="Name of location"),'description': fields.String(required=True,description="Description of location"),'lat': fields.Fixed(required=True,decimals=6,description="Latitude of location"),'lon': fields.Fixed(required=True,description="longitude of location"),}
)
唯一的区别是编辑端点的location_edit_model = api.model("Location",{
'name': fields.String(description="Name of location"),'description': fields.String(description="Description of location"),'lat': fields.Fixed(decimals=6,'lon': fields.Fixed(decimals=6,}
)
。
有没有一种方法可以在不重复大多数信息的情况下同时指定这两者?我看到一种API模型可以从另一API模型(required = True
)继承并克隆模型(inherit()
),但是我看不到如何使用它们来减少重复
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)