2016-12-12 2 views
2

フラスコベースのアプリケーション用のSwagger-API UIドキュメントを作成する方法はありますか? 私は "flasgger"を使ってみましたが、potion-typeルートで書かれたルートでは動作しません。フラスコベースのアプリのSwagger UI

フラスコ-ポーションはmanner-

@Route.GET('/num_products') 

を以下に指定されたルートを持っている。しかし、 "flasggerは" manner-

@app.route('/num_products', methods=['GET']) 

答えて

1

これを行うにはクリーンな方法はありませんが、次のルートを期待しています。しかし、同じことに対するハックのある解決策が存在します。

Flasggerはデフォルトのフラスコ経路で動作します。デフォルトのフラスコ経路としてフラスコを使用して以前に定義された経路を再定義し、新しく作成された機能から以前のフラスコ機能を呼び出すことができます。注 - 既存のルートを新しいルートに変更することは、私にとってはうまくいきませんでした。私は新しい呼び出しで古い呼び出しをマスクし、新しい関数から古い関数を呼び出さなければなりませんでした。

注 - これは、ユーザーによって書き込まれたカスタムルートでのみ機能し、フラスコによるデータモデルから生成されるデフォルトルートでは機能しません。

class ProductResource(BaseModelResource): 
    @Route.GET('/num_products') 
    def product_count(): 
     return product.query(...)  

リファクタリングコードコード - 既存 - たぶん、あなたはフラガーにプルリクエストを送信することができ、またはあなたの調査結果であり、問​​題を開く

class ProductResource(BaseModelResource): 
    def product_count(): 
      return product.query(...) 

@app.route('/num_products', methods=['GET']) 
def product_count_main(): 
    output = product_count() 
    Response(str(output), content_type='application/json') 
+0

?フラスコの分量をサポートすることができます。 –

関連する問題