From 2b6aebdab41f07c9204352cbaf3e367e09368c5e Mon Sep 17 00:00:00 2001 From: Michael Beck Date: Mon, 10 Feb 2025 17:45:24 +0100 Subject: [PATCH] moves app initialization to correct file --- app/__init__.py | 42 ++++++++++++++++++++++++++++++++++++++++++ app/app.py | 42 ------------------------------------------ app/models.py | 5 +---- run.py | 4 ++-- 4 files changed, 45 insertions(+), 48 deletions(-) delete mode 100644 app/app.py diff --git a/app/__init__.py b/app/__init__.py index e69de29..33eb5b9 100644 --- a/app/__init__.py +++ b/app/__init__.py @@ -0,0 +1,42 @@ +from flask import Flask +from flask_bootstrap import Bootstrap5 +from datetime import datetime + +from app.views import register_views +from app.api import register_api +from app.config import load_config +from app.filters import register_filters + +from app.logging_config import init_logger + +def create_app(): + app = Flask(__name__) + + config = load_config() + + app.config['SECRET_KEY'] = config['DEFAULT']['SECRET_KEY'] + + # Move bootstrap settings to root level + for key, value in config.get('BOOTSTRAP', {}).items(): + app.config[key.upper()] = value + + bootstrap = Bootstrap5(app) + + # Store the entire config in Flask app + app.config.update(config) + + # Initialize other settings + app.config['SCRAPING_ACTIVE'] = False + app.config['SCRAPING_THREAD'] = None + app.config['DATA_FILE_NAME'] = None + app.config['LOG_FILE_NAME'] = "log/" + datetime.now().strftime('%Y-%m-%d-%H-%M') + '.log' + + # Initialize logging + app.logger = init_logger(app.config) + + # Register routes + register_views(app) + register_api(app) + register_filters(app) + + return app \ No newline at end of file diff --git a/app/app.py b/app/app.py deleted file mode 100644 index 1cf41a3..0000000 --- a/app/app.py +++ /dev/null @@ -1,42 +0,0 @@ -from flask import Flask -from flask_bootstrap import Bootstrap5 -from datetime import datetime - -from app.views import register_views -from app.api import register_api -from app.config import load_config -from app.filters import register_filters - -from app.logging_config import init_logger - -def init_app(): - app = Flask(__name__) - - config = load_config() - - app.config['SECRET_KEY'] = config['DEFAULT']['SECRET_KEY'] - - # Move bootstrap settings to root level - for key, value in config.get('BOOTSTRAP', {}).items(): - app.config[key.upper()] = value - - bootstrap = Bootstrap5(app) - - # Store the entire config in Flask app - app.config.update(config) - - # Initialize other settings - app.config['SCRAPING_ACTIVE'] = False - app.config['SCRAPING_THREAD'] = None - app.config['DATA_FILE_NAME'] = None - app.config['LOG_FILE_NAME'] = "log/" + datetime.now().strftime('%Y-%m-%d-%H-%M') + '.log' - - # Initialize logging - app.logger = init_logger(app.config) - - # Register routes - register_views(app) - register_api(app) - register_filters(app) - - return app \ No newline at end of file diff --git a/app/models.py b/app/models.py index dea64b8..0f6e7d7 100644 --- a/app/models.py +++ b/app/models.py @@ -136,7 +136,4 @@ class Scraper: def stop_scraping(self): self.scraping_active = False - current_app.logger.debug("Scraping stopped by user") - - def get_end_time(self): - return self.end_time() \ No newline at end of file + current_app.logger.debug("Scraping stopped by user") \ No newline at end of file diff --git a/run.py b/run.py index 59e2eb8..28fb247 100644 --- a/run.py +++ b/run.py @@ -1,5 +1,5 @@ -from app.app import init_app +from app import create_app if __name__ == '__main__': - app = init_app() + app = create_app() app.run(debug=True, threaded=True) \ No newline at end of file