fix: 训练后所有模型自动激活; 预测页无需手动激活即可见

This commit is contained in:
tian 2026-06-10 12:25:37 +08:00
parent 42891d2980
commit 9cb82bd06d

View File

@ -279,14 +279,7 @@ class ModelTrainer:
with get_db_connection() as conn: with get_db_connection() as conn:
cursor = conn.cursor() cursor = conn.cursor()
# 将所有同类型模型设置为非激活, 除了 PLS 模型 # 保存新模型记录(设置为激活)
cursor.execute("""
UPDATE trained_models
SET is_active = FALSE
WHERE equipment_type = ? AND model_type != ?
""", (equipment_type, 'pls'))
# 保存新模型记录
cursor.execute(""" cursor.execute("""
INSERT INTO trained_models ( INSERT INTO trained_models (
model_name, model_type, equipment_type, model_path, model_name, model_type, equipment_type, model_path,
@ -679,19 +672,13 @@ class ModelTrainer:
with get_db_connection() as conn: with get_db_connection() as conn:
cursor = conn.cursor() cursor = conn.cursor()
# 将同类型的其他模型设置为非激活 # PLS每个装备类型只保留最新一个
if model_type != 'pls': if model_type == 'pls':
cursor.execute(""" cursor.execute("""
UPDATE trained_models UPDATE trained_models
SET is_active = FALSE SET is_active = FALSE
WHERE equipment_type = ? AND model_type != ? WHERE equipment_type = ? AND model_type = 'pls'
""", (equipment_type, 'pls')) """, (equipment_type,))
else:
cursor.execute("""
UPDATE trained_models
SET is_active = FALSE
WHERE equipment_type = ? AND model_type = ?
""", (equipment_type, 'pls'))
# 保存新模型记录 # 保存新模型记录
cursor.execute(""" cursor.execute("""