29 lines
793 B
Python
29 lines
793 B
Python
from uuid import UUID
|
|
|
|
from fastapi import APIRouter
|
|
from sqlalchemy import select
|
|
|
|
from app.models.comic import ComicResponse
|
|
from app.schema import Comic, __session__
|
|
|
|
router = APIRouter(
|
|
prefix="/comic",
|
|
tags=["comics"],
|
|
responses={404: {"description": "Not found"}},
|
|
)
|
|
|
|
|
|
@router.get("/comics")
|
|
def get_all_comics() -> list[ComicResponse]:
|
|
results: list[ComicResponse] = []
|
|
with __session__() as session:
|
|
comics = session.scalars(select(Comic)).all()
|
|
for comic in comics:
|
|
results.append(ComicResponse(id=comic.id, title=comic.title, completed=(comic.completed == 1)))
|
|
return results
|
|
|
|
|
|
@router.get("/comics/{comic_id}")
|
|
def get_comic(comic_id: UUID) -> ComicResponse:
|
|
return ComicResponse(id=comic_id, title="Comic2", completed=False)
|