创建flask-restx模型时如何避免重复?

问题描述

我正在使用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 (将#修改为@)