使用Swagger生成的新代码更新Flask代码

Tom*_*mmy 5 python flask swagger

我最近开始使用Swagger来生成烧瓶模板:http : //editor.swagger.io/#/

我的工作流程有缺陷,我想知道哪里出了问题。一世:

  1. 使用用户界面编写API V1 .yaml
  2. 使用UI编辑器生​​成代码,该编辑器将下载存根的zip文件
  3. 编写残存的功能

这部分过程很好。但是,假设我们要添加一个新端点或更改一个现有端点。怎么办?一世:

  1. 重新加载swagger编辑器
  2. 编辑Yaml
  3. 生成代码,该代码将下载新的zip并删除旧代码
  4. 使用新生成的代码并执行“自我合并”,将新存根复制到旧代码中,然后将新yaml复制到旧代码中

似乎最初的烧瓶模板与进行中的维护之间存在差距。我究竟做错了什么?

小智 5

是的,AFAICS确实没有一个很好的工作流程。

您可以做的一件事是在称为“ generated”或类似名称的分支上将原始生成的代码检入git中。然后将其合并以掌握并开始进行处理。如果以后扩展了您的招摇定义,则可以再次生成代码,切换到生成的分支,用新生成的代码覆盖现有代码,再次提交并合并到master。如果您只拥有一些其他端点,那么这甚至可以在没有任何合并冲突的情况下工作。

如果swagger工具对生成的代码具有概念并能够更新生成的代码,当然会更好,但是在那之前这应该是一个可以接受的解决方法。