From 9a17083cadb65dfd9aff27d38c4199f4129dc4d3 Mon Sep 17 00:00:00 2001 From: Eliot Date: Sat, 1 Feb 2025 14:55:32 +0100 Subject: [PATCH] fix(backend): remove to database modules without an id set (caused by past migration) --- app/main.py | 3 +++ app/services/module_service.py | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/app/main.py b/app/main.py index 3086ba8..5198506 100644 --- a/app/main.py +++ b/app/main.py @@ -13,6 +13,7 @@ from app.api.routes.settings_routes import load_settings_routes from app.api.routes.sync_routes import load_sync_routes from app.globals import Globals +from app.services.module_service import ModuleService from app.services.mouli_service import MouliService from app.services.publicscraper_service import PublicScraperService from app.tools.envloader import load_env @@ -102,6 +103,8 @@ def serve(path): if os.getenv("BYPASS_CACHE_RELOAD", "false") == "false": MouliService.refresh_all_cache() + ModuleService.purge_nonid_modules() + return flask_app diff --git a/app/services/module_service.py b/app/services/module_service.py index 3677c98..c6fecba 100644 --- a/app/services/module_service.py +++ b/app/services/module_service.py @@ -37,6 +37,10 @@ def get_latest_fetchdate(student_id: str) -> str: sort=[("fetch_date", -1)]) return p["fetch_date"] if p else None + @staticmethod + def purge_nonid_modules(): + Globals.database["modules"].delete_many({"module_id": {"$exists": False}}) + @staticmethod def upload_module(module: Module): curr = ModuleService.get_module_by_id(module.student_id, module.module_id)