33 lines
714 B
Python
33 lines
714 B
Python
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)
|