flask_boost/project/application/__init__.py
def create_app():
    """Create Flask app."""
    config = load_config()

    app = Flask(__name__)
    app.config.from_object(config)

    # Proxy fix
    app.wsgi_app = ProxyFix(app.wsgi_app)

    # CSRF protect
    CsrfProtect(app)

    if app.debug or app.testing:
        DebugToolbarExtension(app)

        # Serve static files
        app.wsgi_app = SharedDataMiddleware(app.wsgi_app, {
            '/pages': os.path.join(app.config.get('PROJECT_PATH'), 'application/pages')
        })
    else:
        # Log errors to stderr in production mode
        app.logger.addHandler(logging.StreamHandler())
        app.logger.setLevel(logging.ERROR)

        # Enable Sentry
        if app.config.get('SENTRY_DSN'):
            from .utils.sentry import sentry

            sentry.init_app(app, dsn=app.config.get('SENTRY_DSN'))

        # Serve static files
        app.wsgi_app = SharedDataMiddleware(app.wsgi_app, {
            '/static': os.path.join(app.config.get('PROJECT_PATH'), 'output/static'),
            '/pkg': os.path.join(app.config.get('PROJECT_PATH'), 'output/pkg'),
            '/pages': os.path.join(app.config.get('PROJECT_PATH'), 'output/pages')
        })

    # Register components
    register_db(app)
    register_routes(app)
    register_jinja(app)
    register_error_handle(app)
    register_hooks(app)

    return app
def create_app():
    """Create Flask app."""
    config = load_config()

    app = Flask(__name__)
    app.config.from_object(config)

    # Proxy fix
    app.wsgi_app = ProxyFix(app.wsgi_app)

    # CSRF protect
    CsrfProtect(app)

    if app.debug or app.testing:
        DebugToolbarExtension(app)

        # Serve static files
        app.wsgi_app = SharedDataMiddleware(app.wsgi_app, {
            '/pages': os.path.join(app.config.get('PROJECT_PATH'), 'application/pages')
        })
    else:
        # Log errors to stderr in production mode
        app.logger.addHandler(logging.StreamHandler())
        app.logger.setLevel(logging.ERROR)

        # Enable Sentry
        if app.config.get('SENTRY_DSN'):
            from .utils.sentry import sentry

            sentry.init_app(app, dsn=app.config.get('SENTRY_DSN'))

        # Serve static files
        app.wsgi_app = SharedDataMiddleware(app.wsgi_app, {
            '/static': os.path.join(app.config.get('PROJECT_PATH'), 'output/static'),
            '/pkg': os.path.join(app.config.get('PROJECT_PATH'), 'output/pkg'),
            '/pages': os.path.join(app.config.get('PROJECT_PATH'), 'output/pages')
        })

    # Register components
    register_db(app)
    register_routes(app)
    register_jinja(app)
    register_error_handle(app)
    register_hooks(app)

    return app
def create_app ( ) : config = load_config ( ) app = Flask ( __name__ ) app . config . from_object ( config ) # Proxy fix app . wsgi_app = ProxyFix ( app . wsgi_app ) # CSRF protect CsrfProtect ( app ) if app . debug or app . testing : DebugToolbarExtension ( app ) # Serve static files app . wsgi_app = SharedDataMiddleware ( app . wsgi_app , { '/pages' : os . path . join ( app . config . get ( 'PROJECT_PATH' ) , 'application/pages' ) } ) else : # Log errors to stderr in production mode app . logger . addHandler ( logging . StreamHandler ( ) ) app . logger . setLevel ( logging . ERROR ) # Enable Sentry if app . config . get ( 'SENTRY_DSN' ) : from . utils . sentry import sentry sentry . init_app ( app , dsn = app . config . get ( 'SENTRY_DSN' ) ) # Serve static files app . wsgi_app = SharedDataMiddleware ( app . wsgi_app , { '/static' : os . path . join ( app . config . get ( 'PROJECT_PATH' ) , 'output/static' ) , '/pkg' : os . path . join ( app . config . get ( 'PROJECT_PATH' ) , 'output/pkg' ) , '/pages' : os . path . join ( app . config . get ( 'PROJECT_PATH' ) , 'output/pages' ) } ) # Register components register_db ( app ) register_routes ( app ) register_jinja ( app ) register_error_handle ( app ) register_hooks ( app ) return app
Create Flask app.
Create Flask app .