44 lines
1.3 KiB
Markdown
44 lines
1.3 KiB
Markdown
[Jeudi 12 Février 2026]
|
|
class Employee
|
|
ManytoMany
|
|
delete ordi
|
|
Formulaire de création d'employee
|
|
|
|
forms.py
|
|
|
|
faire tableau intermédiaire -> relier employees et ordis
|
|
#
|
|
1. [Commande du jour]
|
|
|
|
ligne 3 from models import Hero, Ordinateur, Employee
|
|
|
|
|
|
@app.get("/add_employee")
|
|
async def add_employee_form(request: Req):
|
|
return templates.TemplateResponse("add_employee.html", {"request": request})
|
|
|
|
from fastapi.responses import HTMLResponse, RedirectResponse
|
|
from starlette.staticfiles import StaticFiles
|
|
from sqlmodel import create_engine, SQLModel, Session, select
|
|
|
|
ligne 131
|
|
@app.post("/add_employee")
|
|
async def add_employee(request: Req):
|
|
form_data = await request.form()
|
|
first_name = form_data.get("first_name")
|
|
family_name = form_data.get("family_name")
|
|
|
|
if not first_name or not family_name:
|
|
raise HTTPException(status_code=400, detail="Prénom et nom de famille requis")
|
|
|
|
with Session(engine) as session:
|
|
employee = Employee(first_name=first_name, family_name=family_name)
|
|
session.add(employee)
|
|
session.commit()
|
|
session.refresh(employee)
|
|
|
|
return {"status": "success", "message": f"Employé {first_name} {family_name} ajouté avec succès", "employee_id": employee.id}
|
|
|
|
|
|
ligne 150 return RedirectResponse(url="/", status_code=303)
|