From 7ec16a87c6f6f4131c7b02b8c0ecf6bbeed01e24 Mon Sep 17 00:00:00 2001 From: Bulat Kurbanov Date: Tue, 31 Jan 2023 11:54:46 +0100 Subject: [PATCH] Add get_last_book endpoint --- fastapi_book_server/app/views/book.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/fastapi_book_server/app/views/book.py b/fastapi_book_server/app/views/book.py index 19aaa2a..4308ce4 100644 --- a/fastapi_book_server/app/views/book.py +++ b/fastapi_book_server/app/views/book.py @@ -38,6 +38,20 @@ async def get_books( return await BookFilterService.get(book_filter, request.app.state.redis) +@book_router.get("/last", response_model=CustomPage[RemoteBook]) +async def get_last_book(): + book = ( + await BookDB.objects.select_related( + SELECT_RELATED_FIELDS + DETAIL_SELECT_RELATED_FIELDS + ) + .prefetch_related(PREFETCH_RELATED_FIELDS) + .order_by("-id") + .first() + ) + + return book + + @book_router.get("/random", response_model=BookDetail) async def get_random_book( request: Request,