Automated Action 7658939790 Create Task Manager API with FastAPI and SQLite
- Set up project structure and dependencies
- Create task model and schema
- Implement Alembic migrations
- Add CRUD API endpoints for task management
- Add health endpoint with database connectivity check
- Add comprehensive error handling
- Add tests for API endpoints
- Update README with API documentation
2025-06-04 22:52:31 +00:00

45 lines
1.2 KiB
Python

from typing import List
from sqlalchemy.orm import Session
from app.crud.base import CRUDBase
from app.models.task import Task
from app.schemas.task import TaskCreate, TaskUpdate
class CRUDTask(CRUDBase[Task, TaskCreate, TaskUpdate]):
def get_multi_by_completed(
self, db: Session, *, completed: bool, skip: int = 0, limit: int = 100
) -> List[Task]:
return (
db.query(self.model)
.filter(Task.completed == completed)
.offset(skip)
.limit(limit)
.all()
)
def get_multi_by_priority(
self, db: Session, *, priority: int, skip: int = 0, limit: int = 100
) -> List[Task]:
return (
db.query(self.model)
.filter(Task.priority == priority)
.offset(skip)
.limit(limit)
.all()
)
def search_by_title(
self, db: Session, *, title: str, skip: int = 0, limit: int = 100
) -> List[Task]:
return (
db.query(self.model)
.filter(Task.title.ilike(f"%{title}%"))
.offset(skip)
.limit(limit)
.all()
)
task = CRUDTask(Task)