Source code for consensys_utils.flask.blueprints

"""
    consensys_utils.flask.blueprints
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Implement helpers to set blueprints on flask application

    :copyright: Copyright 2017 by ConsenSys France.
    :license: BSD, see :ref:`license` for more details.
"""

from flask import Blueprint


[docs]def register_blueprints(app, blueprints=None): """Register blueprints on a Flask application Example: .. doctest:: >>> from flask import Flask, Blueprint >>> app = Flask(__name__) >>> my_bp1 = Blueprint('my-bp1', __name__) >>> my_bp2 = Blueprint('my-bp2', __name__) >>> blueprints = [ ... lambda app: app.register_blueprint(my_bp1), ... my_bp2, ... ] >>> register_blueprints(app, blueprints) :param app: Flask application :type app: :class:`flask.Flask` :param blueprints: Blueprints to register on the application. Expects a list of elements which elements are either - a :class:`flask.Blueprint` - a function that takes a :class:`flask.Flask` as argument and eventually register a blueprint on it :type blueprints: list """ blueprints = blueprints or [] # Set hooks for blueprint in blueprints: if isinstance(blueprint, Blueprint): app.register_blueprint(blueprint) else: blueprint(app)