from flask import Flask from flask_sqlalchemy import SQLAlchemy from flask_bootstrap import Bootstrap from flask.ext import login as flask_login import os # Create application app = Flask(__name__) default_config = { 'SQLALCHEMY_DATABASE_URI': 'sqlite:////tmp/freeposte.db', 'SQLALCHEMY_TRACK_MODIFICATIONS': False, 'SECRET_KEY': "changeMe", 'DEBUG': False } # Load configuration from the environment if available for key, value in default_config.items(): app.config[key] = os.environ.get(key, value) # Setup Bootstrap Bootstrap(app) # Create the database db = SQLAlchemy(app) # Import models once the database is ready from freeposte import models # Setup Flask-login login_manager = flask_login.LoginManager() login_manager.init_app(app) login_manager.login_view = "login" login_manager.user_loader(models.User.get_by_email) @app.context_processor def inject_user(): return dict(current_user=flask_login.current_user) # Finally import view from freeposte import views