from flask import Flask from flask_login import LoginManager from config import Config from models import db, User from routes import main def create_app(config_class=Config): app = Flask(__name__) app.config.from_object(config_class) # Initialize extensions db.init_app(app) login_manager = LoginManager() login_manager.init_app(app) login_manager.login_view = 'main.signup' login_manager.login_message = 'Please sign up or log in to access this page.' @login_manager.user_loader def load_user(user_id): return User.query.get(int(user_id)) # Register blueprints app.register_blueprint(main) # Create database tables with app.app_context(): db.create_all() return app if __name__ == '__main__': app = create_app() app.run(debug=True)