from flask import Flask from flask_migrate import Migrate from flask_login import LoginManager from flask_sqlalchemy import SQLAlchemy from .routes import bp from .models import db, User from .oauth2 import config_oauth import config migrate = Migrate() login_manager = LoginManager() login_manager.login_view = 'home.login' def create_app(cfg): app = Flask(__name__) app.config.from_object(cfg) setup_app(app) return app def setup_app(app): db.init_app(app) config_oauth(app) migrate.init_app(app, db) login_manager.init_app(app) app.register_blueprint(bp, url_prefix='') @login_manager.user_loader def load_user(user_id): return db.session.query(User).get(user_id)