fix: knowledgebase 初始化的时候表格没有创建 #199

This commit is contained in:
Wenjie Zhang 2025-05-21 02:56:14 +08:00
parent 9a9feba3e8
commit 1f3e24cc37
2 changed files with 10 additions and 2 deletions

View File

@ -7,6 +7,7 @@ from contextlib import contextmanager
from src import config
from server.models import Base
from server.models.user_model import User
from server.models.kb_models import KnowledgeDatabase, KnowledgeFile, KnowledgeNode
from src.utils import logger
class DBManager:
@ -34,6 +35,8 @@ class DBManager:
"""创建数据库表"""
# 确保所有表都会被创建
Base.metadata.create_all(self.engine)
logger.info("数据库表创建/检查完成")
def get_session(self):
"""获取数据库会话"""
return self.Session()
@ -52,7 +55,6 @@ class DBManager:
finally:
session.close()
def check_first_run(self):
"""检查是否首次运行"""
session = self.get_session()
@ -61,5 +63,6 @@ class DBManager:
return session.query(User).count() == 0
finally:
session.close()
# 创建全局数据库管理器实例
db_manager = DBManager()

View File

@ -1,3 +1,8 @@
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
Base = declarative_base()
# 导入所有模型文件确保它们被注册到Base.metadata
from . import user_model
from . import kb_models
from . import thread_model