Files
a-dog-a-pet/app/__init__.py

37 lines
1.1 KiB
Python

from flask import Flask
from flask_session import Session
from app.utils.flash_message_category import FlashMessageCategory
from config import Config
from app.extensions import db
from app.utils import DBUtils, ROUTES
def create_app(config_class=Config):
app = Flask(__name__)
app.config.from_object(config_class)
app.config['SESSION_SQLALCHEMY'] = db
db.init_app(app)
@app.context_processor
def inject_routes():
"""Inject ROUTES dictionary into all templates."""
return {'ROUTES': ROUTES}
@app.context_processor
def inject_enums():
return dict(FlashMessageCategory=FlashMessageCategory)
#models_setup()
DBUtils.drop_db(app)
DBUtils.setup_db(app)
# Initialize Flask extensions here
Session(app)
# Register blueprints here
from app.main import bp as main_bp
app.register_blueprint(main_bp)
from app.users import bp as users_bp
app.register_blueprint(users_bp, url_prefix="/users")
from app.pets import bp as pets_bp
app.register_blueprint(pets_bp, url_prefix="/pets")
return app