コード例 #1
0
def create_app(configuration=Config):
    app = Flask(__name__)

    from app.models import db, login_manager, migrate

    app.config.from_object(configuration)
    db.init_app(app)
    migrate.init_app(app, db)
    login_manager.init_app(app)
    login_manager.login_view = "route_blueprint.login"

    from app.routes import route_blueprint

    app.register_blueprint(route_blueprint)

    from app.auth import auth_blueprint

    app.register_blueprint(auth_blueprint, url_prefix="/auth/")

    from app.reports import reports_bp

    app.register_blueprint(reports_bp, url_prefix="/reports/")

    from app.candidates import candidates_bp

    app.register_blueprint(candidates_bp, url_prefix="/candidates/")

    return app
コード例 #2
0
ファイル: __init__.py プロジェクト: corpsgeek/social-flaskapp
def create_app(config=DevelopmentConfig):
    app = Flask(__name__)
    app.config.from_object(config)

    # initialize extension instances
    db.init_app(app)
    db.app = app

    # migrate initialization
    migrate.init_app(app, db)
    migrate.app = app

    # login manager initialization
    login_manager.init_app(app)
    login_manager.app = app

    # register blueprints of applications
    from app.main import main as main_bp
    app.register_blueprint(main_bp)

    # register error blueprint
    from app.errors import errors as errors_bp
    app.register_blueprint(errors_bp)

    # register the authentication blueprint
    from app.auth import auth as auth_bp
    app.register_blueprint(auth_bp)

    return app
コード例 #3
0
def create_app():
    app = Flask(__name__)
    # app.config.from_object('app.secure')
    app.config.from_object('app.setting')
    app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True
    app.register_blueprint(web)
    db.init_app(app)
    db.create_all(app=app)
    login_manager.init_app(app)
    login_manager.login_view = 'views.login'
    login_manager.login_message = '请先登录'
    mail.init_app(app)
    return app
コード例 #4
0
ファイル: __init__.py プロジェクト: dkmva/igem-wiki-wizard
def create_app():
    app = Flask(__name__, static_folder=static_folder)

    try:
        app.config['SQLALCHEMY_DATABASE_URI'] = os.environ[
            'OPENSHIFT_MYSQL_DB_URL'] + os.environ['OPENSHIFT_APP_NAME']
    except KeyError:
        app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///{0}'.format(
            os.path.abspath(
                os.path.join(app.root_path, '..', 'data-dev.sqlite')))

    app.config['THEME_PATHS'] = (os.path.join(
        os.environ.get('OPENSHIFT_DATA_DIR', app.root_path), 'themes'), )

    cfg_folder = os.environ.get('OPENSHIFT_DATA_DIR', app.root_path)

    if not os.path.exists(os.path.join(cfg_folder, 'config.yml')):
        make_config(cfg_folder)
        if 'OPENSHIFT_DATA_DIR' in os.environ:
            shutil.copytree(os.path.join(app.root_path, 'static'),
                            os.path.join(cfg_folder, 'static'))
            shutil.copytree(os.path.join(app.root_path, 'themes'),
                            os.path.join(cfg_folder, 'themes'))

    with open(os.path.join(cfg_folder, 'config.yml')) as f:
        app.config.update(yaml.load(f))

    # Database / Admin
    db.init_app(app)
    themes.init_themes(app, app_identifier='WikiWizard')
    login_manager.init_app(app)
    with app.app_context():
        try:
            User.query.all()
        except (OperationalError, ProgrammingError):
            db.create_all()
            install_data()
    # From Flask-Bootstrap
    app.jinja_env.globals['bootstrap_is_hidden_field'] = is_hidden_field_filter
    app.jinja_env.filters['css_sanitized'] = css_sanitizer
    app.jinja_env.add_extension(WikiInclude)

    # URL Rules / Blueprints
    from main import main as main_blueprint
    app.register_blueprint(main_blueprint)

    # Admin view
    from admin import create_admin
    create_admin(app)

    return app
コード例 #5
0
def create_app():

    app = Flask(__name__, template_folder='views')
    app.config.from_object('app.config.DevConfig')

    with app.app_context():

        db.init_app(app)
        login_manager.init_app(app)

        from app import routes
        routes.init_app(app)

        return app
コード例 #6
0
def create_app():
    app = Flask(__name__, static_folder=static_folder)

    try:
        app.config['SQLALCHEMY_DATABASE_URI'] = os.environ['OPENSHIFT_MYSQL_DB_URL'] + os.environ['OPENSHIFT_APP_NAME']
    except KeyError:
        app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///{0}'.format(
            os.path.abspath(os.path.join(app.root_path, '..', 'data-dev.sqlite')))

    app.config['THEME_PATHS'] = (os.path.join(os.environ.get('OPENSHIFT_DATA_DIR', app.root_path), 'themes'), )

    cfg_folder = os.environ.get('OPENSHIFT_DATA_DIR', app.root_path)

    if not os.path.exists(os.path.join(cfg_folder, 'config.yml')):
        make_config(cfg_folder)
        if 'OPENSHIFT_DATA_DIR' in os.environ:
            shutil.copytree(os.path.join(app.root_path, 'static'), os.path.join(cfg_folder, 'static'))
            shutil.copytree(os.path.join(app.root_path, 'themes'), os.path.join(cfg_folder, 'themes'))

    with open(os.path.join(cfg_folder, 'config.yml')) as f:
        app.config.update(yaml.load(f))

    # Database / Admin
    db.init_app(app)
    themes.init_themes(app, app_identifier='WikiWizard')
    login_manager.init_app(app)
    with app.app_context():
        try:
            User.query.all()
        except (OperationalError, ProgrammingError):
            db.create_all()
            install_data()
    # From Flask-Bootstrap
    app.jinja_env.globals['bootstrap_is_hidden_field'] = is_hidden_field_filter
    app.jinja_env.filters['css_sanitized'] = css_sanitizer
    app.jinja_env.add_extension(WikiInclude)

    # URL Rules / Blueprints
    from main import main as main_blueprint
    app.register_blueprint(main_blueprint)

    # Admin view
    from admin import create_admin
    create_admin(app)

    return app
コード例 #7
0
ファイル: __init__.py プロジェクト: PuTongjian/blog
def create_app() -> Flask:
    app = Flask(__name__)
    app.config.from_object('app.config.settings')
    app.config.from_object('app.config.secure')

    login_manager.init_app(app=app)
    login_manager.login_view = 'views.login'
    login_manager.login_message = '请登录'

    db.init_app(app=app)
    db.create_all(app=app)

    cache.init_app(app=app, config={'CACHE_TYPE': 'simple'})
    limiter.init_app(app=app)

    register_blueprint(app=app)

    return app
コード例 #8
0
def create_app():
    app = Flask(__name__)
    app.config.from_object('app.security')
    app.config.from_object('app.settings')

    db.init_app(app)
    migrate.init_app(app=app, db=db)
    login_manager.init_app(app=app)
    login_manager.login_view = 'auth.login'
    login_manager.login_message = '请登录或者注册帐号'

    register_bp(app=app)

    with app.app_context():
        db.create_all(app=app)

    app.errorhandler(404)(page_not_found)
    app.errorhandler(403)(page_not_forbidden)

    return app
コード例 #9
0
def create_app(config_name):
    app = Flask(__name__)
    app.config.from_object(config[config_name])
    config[config_name].init_app(app)

    db.init_app(app)
    md.init_app(app)
    csrf.init_app(app)
    toolbar.init_app(app)
    login_manager.init_app(app)

    configure_uploads(app, uploads)
    # set maximum file size, default is 16MB
    patch_request_class(app, 1 * 1024 * 1024)

    from app.admin.views import admin as admin_blueprint
    app.register_blueprint(admin_blueprint, url_prefix='/admin')

    from app.auth.views import auth as auth_blueprint
    app.register_blueprint(auth_blueprint, url_prefix='/auth')

    from app.api.views import api as api_blueprint
    app.register_blueprint(api_blueprint, url_prefix='/api')

    from app.main.views import main as main_blueprint
    app.register_blueprint(main_blueprint)

    @app.errorhandler(403)
    def forbidden_route(e):
        return render_template('errors/403.html', e=e), 403

    @app.errorhandler(404)
    def page_not_found(e):
        return render_template('errors/404.html', e=e), 404

    @app.errorhandler(500)
    def internal_server_error(e):
        return render_template('errors/500.html', e=e), 500

    return app
コード例 #10
0
def create_app(config_name):
    app = Flask(__name__)

    app.config.from_object(config[config_name])
    config[config_name].init_app(app)

    bootstrap = Bootstrap()
    bootstrap.init_app(app)

    from app.models import db
    db.init_app(app)

    from app.models import login_manager
    login_manager.session_protection = 'strong'
    login_manager.login_view = 'auth.login'
    login_manager.init_app(app)

    from app.email import mail
    mail.init_app(app)

    if not app.debug and not app.testing:
        from flask.ext.sslify import SSLify
        sslify = SSLify(app)

    from app.blueprints.main import main as main_blueprint
    app.register_blueprint(main_blueprint)

    from app.blueprints.auth import auth as auth_blueprint
    app.register_blueprint(auth_blueprint, url_prefix='/auth')

    # Add additional blueprints here...
    # example:
    # from .myblueprint import myblueprint as myblueprint_blueprint
    # app.register_blueprint(myblueprint_blueprint, url_prefix='/myblueprint')

    return app
コード例 #11
0
def create_app(config_name):
    app = Flask(__name__)
    
    app.config.from_object(config[config_name])
    config[config_name].init_app(app)

    bootstrap = Bootstrap()
    bootstrap.init_app(app)

    from app.models import db
    db.init_app(app)
    
    from app.models import login_manager
    login_manager.session_protection = 'strong'
    login_manager.login_view = 'auth.login'
    login_manager.init_app(app)
    
    from app.email import mail
    mail.init_app(app)

    if not app.debug and not app.testing:
        from flask.ext.sslify import SSLify
        sslify = SSLify(app)

    from app.blueprints.main import main as main_blueprint
    app.register_blueprint(main_blueprint)

    from app.blueprints.auth import auth as auth_blueprint
    app.register_blueprint(auth_blueprint, url_prefix='/auth')

    # Add additional blueprints here...
    # example:
    # from .myblueprint import myblueprint as myblueprint_blueprint
    # app.register_blueprint(myblueprint_blueprint, url_prefix='/myblueprint')

    return app
コード例 #12
0
def create_app(config_name):
    """Create the tower_metadata application for deployment."""
    # Do the stuff necessary to set up the Flask application
    app = Flask(__name__)
    # Let's use the default config for now (set to Development):
    app.config.from_object(config[config_name])
    config[config_name].init_app(app)

    # Initialize the Flask extensions:
    bootstrap.init_app(app)
    moment.init_app(app)
    bower.init_app(app)
    csrf.init_app(app)
    login_manager.init_app(app)

    from mongoengine import connect
    host = config[config_name]().MONGODB_SETTINGS['HOST']
    connect(
        db=
        'pulsepod-restore',  # Not needed because db is in the host uri, or maybe not.
        host=host)
    if config_name is 'testing':
        db.init_app(app)
        db.read_preference = ReadPreference.PRIMARY_PREFERRED
    # attach routes and custom error pages here
    from main import main as main_blueprint
    app.register_blueprint(main_blueprint)

    # from .auth import auth as auth_blueprint
    # app.register_blueprint(auth_blueprint, url_prefix='/auth')

    from .ajax import ajax as ajax_blueprint
    app.register_blueprint(ajax_blueprint, url_prefix='/ajax')

    # @app.route('/thisweek')
    # def this_week():
    #     from datetime import datetime
    #     date = datetime.now()
    #     # Find the Metadata from the past week.

    @app.errorhandler(404)
    def page_not_found(e):
        return render_template('404.html'), 404

    @app.errorhandler(500)
    def internal_server_error(e):
        return render_template('500.html'), 500

    # Put any template helper functions in here:
    @app.context_processor
    def helper_functions():
        def sig_fig(x=None, n=None):
            from math import floor, log10
            if n is not None:
                n = int(n)
            if x is None:
                return x
            if x == 0:
                return x
            if n <= 0:
                return x
            else:
                return round(x, -int(floor(log10(abs(x)))) + (n - 1))

        def label_pct(pct):
            if pct is None:
                return 'danger'
            if pct > 90:
                return 'success'
            if pct < 60:
                return 'danger'
            return 'warning'

        def min_ok(min_ok):
            if min_ok:
                return 'default'
            else:
                return 'danger'

        def max_ok(max_ok):
            if max_ok:
                return 'default'
            else:
                return 'danger'

        return dict(label_pct=label_pct,
                    sig_fig=sig_fig,
                    min_ok=min_ok,
                    max_ok=max_ok)

    return app
コード例 #13
0
from datetime import datetime
import random
import uuid
from statistics import mean 


app = Flask(__name__)

CORS(app)
cors = CORS(app, resources={r"/api/*": {"origins": "*"}})

app.config.from_object(Config)
app.register_blueprint(blueprint, url_prefix="/login")
app.cli.add_command(create_db)
db.init_app(app)
login_manager.init_app(app)

Migrate(app, db)


@app.route("/logout")
@login_required
def logout():
    token = Token.query.filter_by(user_id=current_user.id).first()
    if token:
        db.session.delete(token)
        db.session.commit()
        logout_user()
        resp = {'status': 200}
    else:
        resp = {'status': 300,