CoolFace
Apppublic

dina1/docker_implementation

sourceHugging Faceupdated 1y agoView on Hugging Face
0likes
main.py49 linesDownload Raw Back to root
1from fastapi import FastAPI, HTTPException2from pydantic import BaseModel3from typing import List4 5app = FastAPI(6    title="FastAPI CRUD Example",7    description="A simple CRUD API with FastAPI",8    version="1.0.0",9    docs_url="/docs",10    redoc_url="/redoc"11)12 13items = []14 15class Item(BaseModel):16    id: int17    name: str18    description: str = None19 20@app.get("/")21async def root():22    return {"message": "Welcome to FastAPI CRUD API! Visit /docs for Swagger UI."}23 24@app.get("/items", response_model=List[Item])25async def get_items():26    return items27 28@app.post("/items", response_model=Item)29async def add_item(item: Item):30    if any(i.id == item.id for i in items):31        raise HTTPException(status_code=400, detail="Item ID already exists")32    items.append(item)33    return item34 35@app.put("/items/{item_id}", response_model=Item)36async def update_item(item_id: int, updated_item: Item):37    for index, item in enumerate(items):38        if item.id == item_id:39            items[index] = updated_item40            return updated_item41    raise HTTPException(status_code=404, detail="Item not found")42 43@app.delete("/items/{item_id}")44async def delete_item(item_id: int):45    for item in items:46        if item.id == item_id:47            items.remove(item)48            return {"message": "Item deleted"}49    raise HTTPException(status_code=404, detail="Item not found")