Fix backend deprecation warnings and duplicate index

- Remove duplicate index definition in Task model
- Update Query regex to pattern parameter
- Use ConfigDict instead of class Config in Pydantic
This commit is contained in:
m3mo 2026-02-02 20:51:41 +01:00
parent f121df50f1
commit 820b35f5e6
3 changed files with 4 additions and 9 deletions

View File

@ -17,7 +17,3 @@ class Task(Base):
is_done = Column(Boolean, default=False)
created_at = Column(DateTime, default=datetime.utcnow)
updated_at = Column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)
__table_args__ = (
Index("ix_tasks_date", "date"),
)

View File

@ -27,7 +27,7 @@ def health_check():
@router.get("/tasks", response_model=list[TaskResponse])
def get_tasks(
date: str = Query(..., pattern=r"^\d{4}-\d{2}-\d{2}$"),
status: Optional[str] = Query(None, regex="^(all|active|done)$"),
status: Optional[str] = Query(None, pattern="^(all|active|done)$"),
service: TaskService = Depends(get_task_service),
):
tasks = service.get_tasks_by_date(date, status)

View File

@ -1,7 +1,7 @@
from datetime import datetime
from enum import Enum
from typing import Optional
from pydantic import BaseModel, Field
from pydantic import BaseModel, ConfigDict, Field
class Priority(str, Enum):
@ -32,14 +32,13 @@ class TaskUpdate(BaseModel):
class TaskResponse(TaskBase):
model_config = ConfigDict(from_attributes=True)
id: str
is_done: bool
created_at: Optional[datetime]
updated_at: Optional[datetime]
class Config:
from_attributes = True
class RescheduleRequest(BaseModel):
target_date: str = Field(..., pattern=r"^\d{4}-\d{2}-\d{2}$")