Мне не нравится использовать декоратор @app.route
или метод app.add_url_route
для регистрации функций отображения во Flask приложениях и блюпринтах, потому что мне намного больше по душе паттерн ленивой загрузки этих функций :)
Именно так и родился Flask-LazyViews
. Пример использования тривиальный, для приложений:
from flask import Flask
from flask.ext.lazyviews import LazyViews
app = Flask(__name__)
views = LazyViews(app)
views.add('/', 'views.home')
views.add('/page/', 'views.page')
Или для блюпринтов:
from flask import Blueprint
from flask.ext.lazyviews import LazyViews
blueprint = Blueprint('test', __name__)
views = LazyViews(blueprint, '.views')
views.add('/', 'test')
views.add('/advanced', 'advanced_test', methods=('GET', 'POST'))
Больше информации доступно как всегда на ГитХабе, установить можно с PyPI.