recetas B3: DELETE /cookbook/{author_id} (opt-out del respaldo, borra solo privadas)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Carlos Narro
2026-07-03 08:22:40 +02:00
parent 0844287043
commit 9157d12f67
2 changed files with 24 additions and 0 deletions

13
main.py
View File

@@ -243,6 +243,19 @@ def cookbook(author_id: str, db: Session = Depends(get_db)):
return [r.to_app() for r in rows]
@app.delete("/cookbook/{author_id}")
def delete_cookbook(author_id: str, db: Session = Depends(get_db)):
"""Opt-out del respaldo: borra las copias PRIVADAS de un autor. Lo que
publicó a propósito (pública / no listada) se mantiene."""
n = (
db.query(Recipe)
.filter(Recipe.author_id == author_id, Recipe.visibility == "private")
.delete()
)
db.commit()
return {"deleted": n}
@app.post("/recipes")
def add_recipe(body: RecipeIn, db: Session = Depends(get_db)):
items = [i.model_dump() for i in body.items]