新加ai 对话页面

This commit is contained in:
XIE7654
2025-07-17 10:59:48 +08:00
parent 682e3805eb
commit 6505e69d4f
14 changed files with 548 additions and 4 deletions

18
chat/crud/ai_api_key.py Normal file
View File

@@ -0,0 +1,18 @@
from fastapi import HTTPException
from sqlalchemy.orm import Session
from crud.base import CRUDBase
from models.ai import AIApiKey # SQLAlchemy模型
from schemas.ai_api_key import AIApiKeyCreate, AIApiKeyUpdate
# 继承通用CRUD基类指定模型和Pydantic类型
class CRUDApiKey(CRUDBase[AIApiKey, AIApiKeyCreate, AIApiKeyUpdate]):
# 如有特殊逻辑,可重写父类方法(如创建时验证平台唯一性)
def create(self, db: Session, *, obj_in: AIApiKeyCreate):
# 示例:验证平台+名称唯一
if self.get_by(db, platform=obj_in.platform, name=obj_in.name):
raise HTTPException(status_code=400, detail="该平台下名称已存在")
return super().create(db, obj_in=obj_in)
# 创建CRUD实例
ai_api_key_crud = CRUDApiKey(AIApiKey)