From 54eeb6f5224976d2e125bdcc7fd55760d8acdc4a Mon Sep 17 00:00:00 2001 From: congsh Date: Thu, 12 Feb 2026 11:16:55 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8DSQLAlchemy=202.0+?= =?UTF-8?q?=E5=85=BC=E5=AE=B9=E6=80=A7=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 使用sqlalchemy.orm.DeclarativeBase替代已弃用的ext.declarative - 更新Record类继承新的BaseModel基类 - 更新metadata.create_all调用 --- src/models/database.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/models/database.py b/src/models/database.py index 38b530a..f50a153 100644 --- a/src/models/database.py +++ b/src/models/database.py @@ -7,11 +7,12 @@ from datetime import datetime from typing import Optional from sqlalchemy import Column, Integer, String, Text, DateTime, JSON -from sqlalchemy.ext.declarative import declarative_base from sqlalchemy import create_engine -from sqlalchemy.orm import sessionmaker +from sqlalchemy.orm import sessionmaker, DeclarativeBase -Base = declarative_base() +# 使用新版SQLAlchemy的DeclarativeBase +class BaseModel(DeclarativeBase): + pass class RecordCategory: @@ -34,7 +35,7 @@ class RecordCategory: return category in cls.all() -class Record(Base): +class Record(BaseModel): """记录模型 - 存储图片识别和AI处理结果""" __tablename__ = 'records' @@ -139,7 +140,7 @@ class DatabaseManager: ) # 创建所有表 - Base.metadata.create_all(bind=self.engine) + BaseModel.metadata.create_all(bind=self.engine) def get_session(self): """