yurt
This commit is contained in:
45
app/__init__.py
Normal file
45
app/__init__.py
Normal file
@@ -0,0 +1,45 @@
|
||||
"""
|
||||
Pets of Powerwashing - A Flask application for managing pet picture submissions
|
||||
"""
|
||||
|
||||
from flask import Flask
|
||||
import os
|
||||
|
||||
|
||||
def create_app():
|
||||
"""Application factory pattern for Flask app creation"""
|
||||
app = Flask(__name__)
|
||||
|
||||
# Import configuration
|
||||
from app.config import Config
|
||||
app.config.from_object(Config)
|
||||
|
||||
# Ensure upload directory exists
|
||||
os.makedirs(app.config['UPLOAD_FOLDER'], exist_ok=True)
|
||||
|
||||
# Setup logging
|
||||
from app.utils.logging_config import setup_logging
|
||||
setup_logging(app)
|
||||
|
||||
# Register error handlers
|
||||
from app.utils.error_handlers import register_error_handlers
|
||||
register_error_handlers(app)
|
||||
|
||||
# Initialize database
|
||||
from app.models.database import init_db, close_db
|
||||
with app.app_context():
|
||||
init_db()
|
||||
|
||||
# Register database close function
|
||||
app.teardown_appcontext(close_db)
|
||||
|
||||
# Register blueprints
|
||||
from app.routes.main import main_bp
|
||||
from app.routes.auth import auth_bp
|
||||
from app.routes.pictures import pictures_bp
|
||||
|
||||
app.register_blueprint(main_bp)
|
||||
app.register_blueprint(auth_bp)
|
||||
app.register_blueprint(pictures_bp)
|
||||
|
||||
return app
|
||||
Reference in New Issue
Block a user