Flasgger: Как написать описание нескольких конечных точек в одном файле yaml? - PullRequest
0 голосов
/ 11 июля 2019

Я создал несколько конечных точек во Flask и создал yml-файлы для каждого из них. Так, например, у меня есть 10 конечных точек и 10 небольших файлов yaml. Использовать его не очень удобно, поэтому я хочу поместить все описания в 1 yml файл. Я попробовал это: скрипт приложения:

from flask import Flask, jsonify, abort, make_response, request
from flasgger import Swagger, swag_from

app = Flask(__name__)
swagger = Swagger(app)

@app.route('/api/test/<int:ids>', methods=['GET'])
@swag_from('app.yml')
def test(ids):
    """
    Test function
    Some test function for debugging Swagger.
    """
    return jsonify({"var1": 12312300, "var2":"sdfsdf"})

@app.route('/api/test2/<int:var>', methods=['GET'])
@swag_from('app.yml')
def test(var):
    """
    Test function 2
    Some test function for debugging Swagger.
    """
    abort(make_response(jsonify(message="There is no model with this index"), 404))

и мой app.yml:

paths:
  /api/test2/<int:var>:
    get:
      return some information
      ---
      tags:
        - stage1:
        - name: var
          description: ID
          in: path
          required: true
          type: integer
      responses:
        200:
          description:  OK.


  /api/test/<int:ids>:
    get:
      Test function
      Some test function for debugging Swagger.
      ---
      tags:
        - stage1
      parameters:
        - name: ids
          description: ID
          in: path
          required: true
          type: integer
      responses:
        200:
          description:  OK.
        405:
          description: Invalid input

Но это выдает ошибку:

Ошибки Fetch errorINTERNAL SERVER ERROR /apispec_1.json

это означает, что что-то не так в моем файле yml. Как правильно написать?


Я нашел такую ​​проблему на github: https://github.com/rochacbruno/flasgger/issues/264

...