예제 #1
0
def create_app(settings_override=None, register_security_blueprint=True):
    app = appfactory.create_app(__name__, __path__, settings_override=settings_override,
                                register_security_blueprint=register_security_blueprint)
    app.json_encoder = JSONEncoder

    # 注册app检测
    app.before_request(check_app_key)

    # Register custom error handlers
    if app.debug:
        for e in [500, 404, 403]:
            app.errorhandler(e)(handle_error)

    return app
예제 #2
0
def create_app(settings_override=None):
    """Create frontend application.

    :param settings_override: settings that need to override Default to None.
    """
    app = appfactory.create_app(__name__, __path__, settings_override)
    app.json_encoder = JSONEncoder

    from .. import models

    #这个只有网页上使用,放在这里的最大原因是为了防止在单元测试时重复增加adminview的endpoint
    admin = Admin(name='Admin', base_template='admin/admin_base.html')
    collect_admin_views(models, admin, app)
    admin.init_app(app)

    # Register custom error handlers
    if not app.debug:
        for e in [500, 404, 403]:
            app.errorhandler(e)(handle_error)

    init_context_processor(app)

    return app