yusuf-v7knrr/endpoints/books.post.py

23 lines
690 B
Python

from typing import List
from fastapi import APIRouter, Depends, status
from sqlalchemy.orm import Session
from core.database import get_db
from schemas.book import BookCreate, BookSchema
from helpers.book_helpers import create_book, get_all_books
router = APIRouter()
@router.post("/books", status_code=status.HTTP_201_CREATED, response_model=BookSchema)
async def create_new_book(
book: BookCreate,
db: Session = Depends(get_db)
):
new_book = create_book(db=db, book_data=book)
return new_book
@router.get("/books", status_code=200, response_model=List[BookSchema])
async def get_books(
db: Session = Depends(get_db)
):
books = get_all_books(db)
return books