from flask import Flask from flask_security.datastore import SQLAlchemyUserDatastore from flask_sqlalchemy import SQLAlchemy from flask_migrate import Migrate from flask_security.core import Security from flask_assets import Bundle, Environment from . import config db = SQLAlchemy() migrate = Migrate() security = Security() environment = Environment() def create_app(): app = Flask(__name__) app.config.from_file("/etc/nccd/config.toml", load=config.load_config) db.init_app(app) migrate.init_app(app, db) environment.init_app(app) # Static file init scss = Bundle('scss/style.scss', filters='scss', output='gen/style.css') environment.register('scss', scss) from .database import User, Role from .auth import forms as auth_forms user_datastore = SQLAlchemyUserDatastore(db, User, Role) security.init_app(app, user_datastore, register_form=auth_forms.ExtendedRegister) # Blueprints app.register_blueprint(auth.bp) print(app.url_map) return app