From 713984cea3dc946d0ecc8eaa261330e6f9fa4877 Mon Sep 17 00:00:00 2001 From: Lxy Date: Sat, 4 Jul 2026 23:46:53 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=A3=80=E6=9F=A5=20=5Fsave=5Fto=5Fmysq?= =?UTF-8?q?l=20=E8=BF=94=E5=9B=9E=E5=80=BC=EF=BC=8C=E8=BF=81=E7=A7=BB?= =?UTF-8?q?=E6=97=B6=20JSON=20=E6=8D=9F=E5=9D=8F=E4=B8=8D=E5=9B=9E?= =?UTF-8?q?=E5=A1=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/config_migration.py | 5 ++++- app/config_store.py | 4 +++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/app/config_migration.py b/app/config_migration.py index a1bb5f1..4dadda9 100644 --- a/app/config_migration.py +++ b/app/config_migration.py @@ -37,7 +37,10 @@ def migrate_configs_to_mysql(): skipped_count += 1 continue - value = store._load_json(key, DEFAULT_CONFIGS.get(key, {})) + value = store._load_json_from_file(key) + if value is None: + value = DEFAULT_CONFIGS.get(key, {}) + logger.info(f"JSON 配置 [{key}] 不存在或损坏,使用默认值迁移") store._save_to_mysql(key, value) migrated_count += 1 logger.info(f"配置 [{key}] 已从 JSON 迁移到 MySQL") diff --git a/app/config_store.py b/app/config_store.py index 30e92cf..db58a7e 100644 --- a/app/config_store.py +++ b/app/config_store.py @@ -86,7 +86,9 @@ class ConfigStore: if self.storage_manager.check_mysql(): try: - self._save_to_mysql(key, value) + if not self._save_to_mysql(key, value): + logger.warning(f"写入 MySQL 配置 [{key}] 失败,保留 JSON 旧值") + return False except Exception as e: logger.warning(f"写入 MySQL 配置 [{key}] 失败,保留 JSON 旧值: {e}") return False