diff --git a/endpoints/fruits.post.py b/endpoints/fruits.post.py index e69de29..6556e2d 100644 --- a/endpoints/fruits.post.py +++ b/endpoints/fruits.post.py @@ -0,0 +1,16 @@ +from fastapi import APIRouter, status +from schemas.fruit import FruitCreate, FruitSchema +from helpers.fruit_helpers import create_fruit +from sqlalchemy.orm import Session +from fastapi import Depends +from core.database import get_db + +router = APIRouter() + +@router.post("/fruits", status_code=status.HTTP_201_CREATED, response_model=FruitSchema) +async def add_fruit( + fruit: FruitCreate, + db: Session = Depends(get_db) +): + new_fruit = create_fruit(db=db, fruit_data=fruit) + return new_fruit \ No newline at end of file diff --git a/schemas/fruit.py b/schemas/fruit.py index e4e730a..fa9a1b3 100644 --- a/schemas/fruit.py +++ b/schemas/fruit.py @@ -1,8 +1,9 @@ -from pydantic import BaseModel, Field +import datetime from typing import Optional -from datetime import datetime from uuid import UUID +from pydantic import BaseModel, Field + class FruitBase(BaseModel): name: str = Field(..., description="Name of the fruit") description: Optional[str] = Field(None, description="Description of the fruit") @@ -16,8 +17,8 @@ class FruitUpdate(FruitBase): class FruitSchema(FruitBase): id: UUID - created_at: datetime - updated_at: datetime + created_at: datetime.datetime + updated_at: datetime.datetime class Config: orm_mode = True \ No newline at end of file