@app.put() & @app.delete() este o componentă esențială în ecosistemul FastAPI. Endpoint-uri REST standard pentru actualizarea completă a unei resurse și ștergerea idempontentă.
Sintaxă și Utilizare Practică
Exemplu practic documentat pas cu pas:
@app.put("/articole/{id}", response_model=ArticolResponse)
async def actualizeaza_articol(id: int, payload: ArticolUpdateSchema):
return await serviciu_articole.actualizeaza(id, payload)
@app.delete("/articole/{id}", status_code=status.HTTP_204_NO_CONTENT)
async def sterge_articol(id: int):
await serviciu_articole.sterge(id)
return None
Bune Practici în Producție
- Arhitectură și Tipizare: Folosiți DTO-uri, validare strictă și principii de decuplare (Inversion of Control).
- Performanță: Evitați interogările N+1, folosiți mecanisme de caching și rute asincrone unde este cazul.
- Securitate: Validați întotdeauna datele de intrare și aplicați filtre de autorizare pe toate endpoint-urile sensibile.