首页 > 解决方案 > 为什么我的烧瓶 RESTplus 模型没有注册

问题描述

我有一个 Flask RESTplus 代码,我在“models.py”文件夹中实例化了模型。我在它们各自的 Flask SQLAlchemy 模型类中命名了所有 API 模型

例如

class User(db.Model):
   serializer = api.model("user", {
      "name" : fields.String,
   })
   name = db.Column(db.String(10))

class Profile(db.Model):
   serializer = api.model("profile",{
      "country": fields.String,
   })
   country = db.Column(db.String(50))

就像每个模型一样,使用 Flask 应用工厂方法和 API 的命名空间。我的问题是,Swagger UI 中只显示一个模型,我很困惑。我已经尽一切努力让其他人展示,但没有任何效果

代码在 Heroku 上运行,所以你可以在那里看到 Swagger UI

https://restplus-music-review.herokuapp.com/

标签: pythonapiflaskswagger-uiflask-restplus

解决方案


自己解决了。问题出在我没有api.marshal_with在任何方法上使用装饰器。但是我碰巧model在响应装饰器上使用了该参数。这导致记录一个模型,而不是其他模型。谢谢


推荐阅读