diff --git a/app/api/endpoints/config.py b/app/api/endpoints/config.py index 935d565..edd4ef7 100644 --- a/app/api/endpoints/config.py +++ b/app/api/endpoints/config.py @@ -1,6 +1,6 @@ from fastapi import APIRouter, Depends from sqlalchemy.orm import Session -from app.models.config import ConfigDB, ConfigInfo, ConfigUpdate +from app.models.config import ConfigDB, ConfigInfo, ConfigUpdate, ConfigCreate from app.models.user import UserDB from app.models.database import get_db from app.api.deps import get_admin_user @@ -64,7 +64,7 @@ async def update_config( @router.post("", response_model=ResponseModel) async def create_config( - config: ConfigInfo, + config: ConfigCreate, db: Session = Depends(get_db), admin: UserDB = Depends(get_admin_user) # 仅管理员可操作 ): diff --git a/app/models/config.py b/app/models/config.py index d1fdd17..a0a2483 100644 --- a/app/models/config.py +++ b/app/models/config.py @@ -14,6 +14,7 @@ class ConfigDB(Base): create_time = Column(DateTime(timezone=True), server_default=func.now()) update_time = Column(DateTime(timezone=True), onupdate=func.now()) + class ConfigInfo(BaseModel): id: int key: str @@ -23,6 +24,14 @@ class ConfigInfo(BaseModel): class Config: from_attributes = True +class ConfigCreate(BaseModel): + key: str + value: str + description: Optional[str] = None + + class Config: + from_attributes = True + class ConfigUpdate(BaseModel): value: str description: Optional[str] = None