-
Notifications
You must be signed in to change notification settings - Fork 6
Open
Description
Currently, there isn't a way to combine multiple generators to generate one swagger yaml file. This prevents users from being able to split up routes into separate modules.
To illustrate, assume I have one file (view1.py) with a route defined like so:
blueprint = Blueprint('Blueprint1', __name__)
@blueprint.route(...)
def route_1(...):
...And another file (view2.py) with a route defined like so:
blueprint = Blueprint('Blueprint2', __name__)
@blueprint.route(...)
def route_2(...):
...Currently, in a third file (app.py), I can add these blueprints to one app like so:
from flask import Blueprint, jsonify, Flask
from views1 import blueprint as blueprint1
from views2 import blueprint as blueprint2
app = Flask(__name__)
app.register_blueprint(blueprint1)
app.register_blueprint(blueprint2)This does not work for the swagger generator as it does not have a way to combine different generators to generate a swagger file.
In essence, if we have the following route in (view1.py):
generator = Generator.of(SwaggerVersion.VERSION_THREE)
@generator.request_body(...)
@blueprint.route(...)
def update_object(object_id):
...And this route in (view2.py):
generator = Generator.of(SwaggerVersion.VERSION_THREE)
@generator.request_body(...)
@blueprint.route(...)
def update_object(object_id):
...In a third file, we should be able to do something like this:
from flask_swagger_generator.generators import Generator
from views1 import generator as generator1
from views2 import blueprint as generator2
generator = Generator.compose_from([generator1, generator2])Metadata
Metadata
Assignees
Labels
No labels