INNER CODE UNIT · Python
add_book
marty331/fasthtmx · main.py:92
def add_book(request: Request, db: Session = Depends(get_db)):
vm = addbookviewmodel.AddBookViewModel(db=db)
data = vm.to_dict()
return templates.TemplateResponse('books/partials/add_books_form.html', {"request": request, "data": data})
@app.post("/books/add")
def book_add(title: str = Form(...), pages: str = Form(...), author_id: str = Form(...), db: Session = Depends(get_db)):
db_book = dbs.get_book(db, title=title)
if db_book:
raise HTTPException(status_code=400, detail="Book already exists.")
book = schema.CreateBook
book.title = title
book.author_id = int(author_id)
book.pages = int(pages)
dbs.create_book(db, book=book)
return RedirectResponse(url="/", status_code=302)