item.py 759 B

1234567891011121314151617181920212223242526272829303132333435
  1. from typing import Any, List
  2. from fastapi import APIRouter, Depends
  3. from sqlalchemy.orm import Session
  4. from app import crud, schemas
  5. from app.api.dependencies.db import get_db
  6. router = APIRouter()
  7. @router.get("/", response_model=List[schemas.Item])
  8. def read_items(
  9. db: Session = Depends(get_db),
  10. skip: int = 0,
  11. limit: int = 100,
  12. ) -> Any:
  13. """
  14. Retrieve items.
  15. """
  16. items = crud.item.get_multi(db, skip=skip, limit=limit)
  17. return items
  18. @router.post("/", response_model=schemas.Item)
  19. def create_item(
  20. *,
  21. db: Session = Depends(get_db),
  22. item_in: schemas.ItemCreate,
  23. ) -> Any:
  24. """
  25. Create new item.
  26. """
  27. item = crud.item.create_with_owner(db=db, obj_in=item_in)
  28. return item